我的脚本中有很多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();
}
});
});
Run Code Online (Sandbox Code Playgroud)
像这样的类似功能正在发挥作用
<!-- WORKING FUNCTION -->
$('#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');
});
}
});
});
Run Code Online (Sandbox Code Playgroud)
我用firebug检查,控制台没有显示任何错误,我检查html源的值正在加载正确,我检查我的PHP文件5次它是正确的无法弄清楚问题.请帮忙.
Par*_*ari 34
我连续6小时都遇到了完全相同的问题!解决方案是使用jquery'live'.
就是这样.
$('#submit').live('click',function(){
...code...
});
Run Code Online (Sandbox Code Playgroud)
对于第一个,我会alert()
在click匿名函数中加入一个快速而令人讨厌的东西,以确保它被触发.消除它可能无法正常工作的原因.此外,尝试使用Live HTTP标头或Firebug的控制台来查看是否正在发送AJAX请求.
如果未触发点击,请查看您是否选择了正确的选择器.我经常这样做(非常讨厌)
var testSelector = 'p:first ul li:last';
$(testSelector).css( { border: '1px solid red' } );
Run Code Online (Sandbox Code Playgroud)
它并不总是可见,但如果你在生成的标记中看到style ="border:1px solid red",你知道你的选择器在球上.
也许你有另一个覆盖它的点击?尝试使用
$('#delete').bind('click', function() {
// do it
});
Run Code Online (Sandbox Code Playgroud)
我在 html 和 js ('.delete')中将其更改为class=delete,而不是 id=delete,它现在工作正常,但再次尝试使用 id 时它不起作用。
谢谢大家的帮助,无论是 id 还是 class,我都没有任何问题,只是功能现在可以工作了。