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

.click功能对我不起作用

如何解决《.click功能对我不起作用》经验,为你挑选了2个好方法。

我的脚本中有很多jquery函数但是特定的函数不起作用,这是我的函数

  $('#delete').click(function() {
          var id = $(this).val();
          $.ajax({
                     type: 'post',
                     url: 'update.php',
                     data: 'action=delete&id=' + id ,
                     success: function(response) {
                             $('#response').fadeOut('500').empty().fadeIn('500').append(response);
                             $(this).parent('tr').slideUp('500').empty();
                           }
                 });        
         });

像这样的类似功能正在发挥作用


$('#UpdateAll').click(function() {
            $.ajax({
            type: 'post',
            url: 'update.php',
            data: 'action=updateAll',

            success: function(response) {
                $('#response').fadeOut('500').empty().fadeIn('500').append(response);

                $('#table').slideUp('1000').load('data.php #table', function() {
                    $(this).hide().appendTo('#divContainer').slideDown('1000');
                });
            }
            });     
        });

我用firebug检查,控制台没有显示任何错误,我检查html源的值正在加载正确,我检查我的PHP文件5次它是正确的无法弄清楚问题.请帮忙.



1> Parik Tiwari..:

我连续6小时都遇到了完全相同的问题!解决方案是使用jquery'live'.

就是这样.

$('#submit').live('click',function(){
...code...
});


不推荐使用live,应该使用`.on`
当我们使用实时函数时,jQuery开始跟踪DOM中所做的所有更改,包括来自ajax请求的新数据/元素或删除任何元素.

2> alex..:

对于第一个,我会alert()在click匿名函数中加入一个快速而令人讨厌的东西,以确保它被触发.消除它可能无法正常工作的原因.此外,尝试使用Live HTTP标头或Firebug的控制台来查看是否正在发送AJAX请求.

如果未触发点击,请查看您是否选择了正确的选择器.我经常这样做(非常讨厌)

var testSelector = 'p:first ul li:last';

$(testSelector).css( { border: '1px solid red' } );

它并不总是可见,但如果你在生成的标记中看到style ="border:1px solid red",你知道你的选择器在球上.

也许你有另一个覆盖它的点击?尝试使用

$('#delete').bind('click', function() {
  // do it
});

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