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          });

 

posted @ 2018-02-11 14:51  夏天的薰风  阅读(2011)  评论(0编辑  收藏  举报