Angularjs Angular.js重置按钮对ng重复无影响
在以下代码中,如何使用重置按钮删除ul元件Angularjs Angular.js重置按钮对ng重复无影响,angularjs,angularjs-ng-repeat,Angularjs,Angularjs Ng Repeat,在以下代码中,如何使用重置按钮删除ul元件 <html ng-app> <head> <script src="http://code.angularjs.org/1.2.0rc1/angular.min.js"></script> </head> <body> <form ng-submit="submit()" ng-controller="Ctrl"&g
<html ng-app>
<head>
<script src="http://code.angularjs.org/1.2.0rc1/angular.min.js"></script>
</head>
<body>
<form ng-submit="submit()" ng-controller="Ctrl">Enter text and hit enter:
<input type="text" ng-model="text" name="text" />
<input type="submit" id="submit" value="Submit" />
<input type="reset" id="reset" value="Reset" />
<ul>
<li ng-repeat="(key,val) in ret">{{key}} = {{val}}</li>
</ul>
</form>
<script>
function Ctrl($scope) {
$scope.ret = {}
$scope.reset = function() {
$scope.ret = {}
}
$scope.submit = function() {
var str = $scope.text;
var ret = $scope.ret
for (x = 0, length = str.length; x < length; x++) {
var l = str.charAt(x);
ret[l] = (isNaN(ret[l]) ? 1 : ret[l] + 1);
}
$scope.ret = ret
}
}
</script>
</body>
</html>
提前谢谢。这里的问题是,您尚未连接控制器上的重置方法。应该是这样的
请参阅更新的fiddle此处的问题是您尚未连接控制器上的重置方法。应该是这样的 请参阅更新的fiddle,您可以使用它来隐藏它,而不是将其从DOM中删除
<form ng-init="show=true" ng-controller="Ctrl" ng-submit="submit()">Enter text and hit enter:
<input type="text" ng-model="text" name="text" />
<input type="submit" id="submit" value="Submit" />
<input type="reset" id="reset" value="Reset" ng-click="show=false" />
<ul ng-show="show">
<li ng-repeat="(key,val) in ret">{{key}} = {{val}}</li>
</ul>
</form>
您可以使用隐藏它,而不是将其从DOM中删除
<form ng-init="show=true" ng-controller="Ctrl" ng-submit="submit()">Enter text and hit enter:
<input type="text" ng-model="text" name="text" />
<input type="submit" id="submit" value="Submit" />
<input type="reset" id="reset" value="Reset" ng-click="show=false" />
<ul ng-show="show">
<li ng-repeat="(key,val) in ret">{{key}} = {{val}}</li>
</ul>
</form>
非常感谢。ng controller=Ctrl在@user977828上方缺失并将其添加回。我在JSFIDLE上玩,并将其提取到外部包装中。谢谢,谢谢。ng controller=Ctrl在@user977828上方缺失并将其添加回。我在JSFIDLE上玩,并将其提取到外部包装中。谢谢,谢谢。在$scope.submit函数中,我必须更改为var ret={},以避免将结果添加到旧函数中。谢谢。在$scope.submit函数中,我必须更改为var ret={},以避免将结果添加到旧函数中。