我正在做一个返回一些HTML和jQuery的AJAX调用:
<div id='selected'>Here is my Selection Text
<a id='trashSelected' href=\"javascript:void(0);\">Remove</a>
</div>
<script>
$('#trashSelected').live('click',function delete()
{
// remove the container
$('#selected').remove();
substractSelectionCount();
return false;
});
</script>
如果用户点击“删除”链接,jQuery将删除添加的容器。 它执行删除容器的工作,但调用substractSelectionCount();永远不会发生我应该以不同的方式调用此函数吗? 这是文档中已有的功能。在FF,IE 8和Safari中测试
答案 0 :(得分:0)
我可能会遗漏一些东西,但你是否尝试过这种方式?
$('#trash{$roleId}').live('click',function delete()
{
// remove the container
substractSelectionCount();
$('#selected').remove();
return false;
});
答案 1 :(得分:0)
您的函数回调中似乎存在语法错误,请删除单词delete
$('#trash{$roleId}').live('click',function(e) {
e.preventDefault();
alert('trash clicked');
// ...
return false;
});
答案 2 :(得分:0)
解决这个问题的方法是:我不是从ajax调用返回脚本,而是使用主文件中的类。所有响应都返回此字符串
<div id='selected'>Here is my Selection Text
<a class='trashSelected' href=\"javascript:void(0);\">Remove</a>
</div>
在我的文件中我有一个像这样的函数
$('.trashSelected').live('click',function(){
$(this).parent().remove();
subtractSelectionCount();
return false;
$(this).parent().remove();
subtractSelectionCount();
return false;
答案 3 :(得分:0)
您的currentSelectionCount
是全局变量吗?也许正在调用函数,因为这个函数不能正常工作?
你是否尝试在函数中添加警报以确保它没有被调用?
function substractSelectionCount(){
alert("I'm working!");
currentSelectionCount--;
}
我在这个pastebin中放置了一个测试文件,它似乎与ID完美配合......但是由于我添加了三个div来测试它,我不得不用类替换ID。所以,我不确定你的代码在哪里出现问题 - 也许你的substractSelectionCount
函数不在document.ready函数之内?