当前位置:  开发笔记 > 编程语言 > 正文

Jquery每个循环都不起作用

如何解决《Jquery每个循环都不起作用》经验,为你挑选了1个好方法。



1> Paolo Bergan..:

您不需要循环遍历绑定处理程序的每个链接,您可以这样做:

// bind click handler to all  tags inside #rate_box
$('#rate_box a').click(function() {

});

取消绑定同样如此:

$('#rate_box a').unbind('click');

至于你的代码,它可能没有执行,因为当你解开元素标签时你还没有关闭内部,所以它是无效的javascript:

$('#rate_box a').each(function(i) {
    $(this).unbind('click');
} // <- missing closing ");"

你应该使用像Firebug或Firebug Lite这样的工具来调试你的javascript,虽然上面的内容应该只是在大多数浏览器中给你一个Javascript错误.

编辑如果要在单击时查找当前链接的索引,请执行以下操作:

var links = $('#rate_box a');
$(links).click(function() {
    // this is to stop successive clicks on ratings,
    // although the server should still validate to make
    // sure only one rating is sent per game
    if($(this).hasClass('inactive_for_click')) return false;
    $(links).addClass('inactive_for_click');
    // get the index of the link relative to the rest, add 1
    var index = $(links).index(this) + 1;
    $.post("../includes/process/rating.php", {
        id: "",
        type: "game",
        rating: index
    }, function(data) {
        $('#status').html(data).fadeIn("normal");
        // unbind links to disable further voting
        $(links).unbind('click'); 
    });
});

推荐阅读
mobiledu2402851173
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有