当我点击“删除”时,调用函数<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.8/angular.min.js"></script>
<body ng-app="app">
<div ng-controller="TestCtrl">
<input type="text" ng-model="newDate">
<button ng-click="addDate()">Add Date</button>
<br/>OrderBy Field:
<input type="text" ng-model="orderField">
<table>
<thead>
<th ng-repeat="(key,val) in arr[0]">
{{key}}
</th>
</thead>
<tbody>
<tr ng-repeat="o in arr | orderBy:orderField">
<td ng-repeat="(key,val) in o">{{val | format}}</td>
</tr>
</tbody>
</table>
</div>
</body>
。即使我多次点击DELETE,我怎么能只前置一次?我希望它在我第一次点击时发生。
deleting()
function deleting() {
$(".checking").prepend("<input type='checkbox' name='idcheckbox'>");
}
答案 0 :(得分:1)
如果您不想再次使用jQuery,可以创建一个全局&#34;标记&#34;变量,像这样:
var flag = false;
function deleting() {
if(flag)
return false;
$(".checking").prepend("<input type='checkbox' name='idcheckbox'>");
flag = true;
return true;
}
但不建议这样做,因为你总是没有必要的听众。
答案 1 :(得分:0)
您可以使用jQuery one来:将处理程序附加到元素的事件。每个事件类型的每个元素最多执行一次处理程序。
您可以动态附加事件而不是内联:
$(function () {
$('a').one('click', function(e) {
e.preventDefault();
$(".checking").prepend("<input type='checkbox' name='idcheckbox'>");
})
});
你的HTML可能就像:
<form>
<a href="">DELETE</a>
</form>