查看链接会在每次额外点击时向表中添加行。我需要停止ıt。 我有一个JavaScript对象的2个对象,通过GetVıewData传递给prıntfeedfunctıon。 当我clıck每个vıewlınk它添加2行,whıchısfıne。 clıckıngagaınıt之后再添加2个,依此类推。我怎么能阻止这些功能呢?
$(document).ready(function() {
$(".anch").click(function(e) {
GetViewData(trID);
});
function GetViewData(pid) {
var data = [ {"FeedID":"10", "TranslateText": "test"}, {"FeedID":"11", "TranslateText": "test"}];
$.each(data, function (i, item) {
printFeed(div, item,TableID );
});
function printFeed(div,item,tableName) {
var iTableName = "#" + tableName;
var newRow = $("<tr><td>test</td></tr>");
$(iTableName).append(newRow);
}
<a class="anch">view</a>
<div id="ajaxDiv-1">
<table id="Table2">
<tr><td>test</td></tr>
</table>
</div>
<a class="anch">view</a>
<div id="ajaxDiv-1">
<table id="Table3">
<tr><td>test</td></tr>
</table>
</div>
答案 0 :(得分:0)
所以你希望用户只能点击一次按钮吗?
如果是这样,你可以使用jQuery .one函数。 http://api.jquery.com/one/
答案 1 :(得分:0)
包含使用先前发布的one()
的各种方式。这限制了处理程序只能运行一次。
您可以使用条件语句来查看是否需要在处理程序中运行代码。
var ctr=0;
$(selector).click(function(){
if( ctr < 3){
/* run code*/
}
ctr++;
});
或者您可以使用unbind()
或off()
if( myFavoriteColor === 'Green'){
$(selector).unbind('click')
}
或
$(selector).click(function(){
if( ctr < 3){
/* run code*/
}else{
$(this).unbind('click')
}
ctr++;
});