84669 orang belajar
152542 orang belajar
20005 orang belajar
5487 orang belajar
7821 orang belajar
359900 orang belajar
3350 orang belajar
180660 orang belajar
48569 orang belajar
18603 orang belajar
40936 orang belajar
1549 orang belajar
1183 orang belajar
32909 orang belajar
我的问题:
$.post(url, function(result) { if (result=="1") {//这个if语句能进入,已测试成功 $(this).parents('.p1').remove();//问题所在? return false; } }, 'json');
注: $(this).parents('.p1').remove(); 放在$_post之外也能测试成功。
为什么放在$_post中无法测试成功?
$(this)作用域的问题,可以这样
var _this = $(this); $.post(url, function(result) { if (result=="1") {//这个if语句能进入,已测试成功 _this.parents('.p1').remove(); return false; } }, 'json');
这个是问题是不管POST,GET,AJAX 你往服务器传值,限定了返回值的类型,如果返回不是json类型,接收不到 但是放在外面是可以执行的,就是说 你在服务器端的代码不是 json_encode() 返回类型的。
经典的 this 的问题么
看具体报错信息,$(this)作用域肯定有问题。如果result的值是1那肯定没问题,如果是json或其他,最后的判断肯定也要改。
首先 $(this) 这个作用域有问题 可以定义在 post之外 第二个 如果ajax放回时间过长 页面中没有效果 可以改为同步ajax 体验会更好
$(this)作用域的问题,可以这样
这个是问题是不管POST,GET,AJAX 你往服务器传值,限定了返回值的类型,如果返回不是json类型,接收不到 但是放在外面是可以执行的,就是说 你在服务器端的代码不是 json_encode() 返回类型的。
经典的 this 的问题么
看具体报错信息,$(this)作用域肯定有问题。
如果result的值是1那肯定没问题,如果是json或其他,最后的判断肯定也要改。
首先 $(this) 这个作用域有问题 可以定义在 post之外 第二个 如果ajax放回时间过长 页面中没有效果 可以改为同步ajax 体验会更好