jquery中ajax回调函数使用this
今天在写ajax请求的的时候success中代码老是不能正常执行,找了半天的原因,代码如下:
1 $.ajax({type: 'GET', 2 url: url, 3 data: oData, 4 success:function(){ 5 $(this).prevAll('p').css("text-decoration","line-through"); 6 } 7 });
最后发现是ajax中的回调函数(success等)直接用this不灵,解决办法是使用bind(this)绑定this到当前事件。
1 $.ajax({type: 'GET', 2 url: url, 3 data: oData, 4 success:function(){ 5 $(this).prevAll('p').css("text-decoration","line-through"); 6 }.bind(this) 7 });