jquery问题。重装后

时间:2011-01-08 21:05:08

标签: php jquery ajax

<script type="text/javascript">
var auto_refresh = setInterval(
function()
{
$('#data').load('data.php');
}, 10000);

$(".banit").click(function() {
var namer= $(this).val();
alert(namer);

});

</script>

data.php中的数据每隔10秒加载到具有id数据的div中 这个数据有一个按钮(循环和回显在PHP中)与班级banit。和按钮banit有价值的东西..这个值必须提醒。

现在一旦打开页面,此按钮就可以正常工作并提醒!但一旦数据重新加载,它就会停止工作! 请帮忙!

2 个答案:

答案 0 :(得分:3)

当你致电$('#data').load('data.php');时,你会销毁#data的所有子元素,包括按钮及其点击处理程序。

您必须在加载新内容后重新绑定点击事件或使用live

$(".banit").live('click', function() {
    var namer= $(this).val();
    alert(namer);
});

live绑定的事件处理程序将适用于所有当前的未来的DOM元素。

答案 1 :(得分:0)

就像piquadrat所说的那样,你必须每次重新绑定处理程序,但我宁愿使用像paul irish这样的“委托”方法:http://www.slideshare.net/paul.irish/perfcompression(幻灯片34到38)。