jquery传参PHP的回调函数无法使用$(this)的解决办法

来源:互联网 发布:易语言小游戏源码 编辑:程序博客网 时间:2024/05/01 11:42

和同学一起做公益项目,中间用到了jquery。

其中一段的jquery代码是这样的:

$(document).ready(function(){        $(".btnchange").on("click",function(){            var value=$(this).attr("name");            console.log(value)            $.get("translationOnline.php",                {                    name:value                },                function(data){                    $(this)<span style="font-family: Arial, Helvetica, sans-serif;">.parent().html(data);</span>                });        })    })

发现这么写的时候,回调函数根本没有执行反应,连用hide()都没有反应,查了一下问题,发现好像是回调函数里面的$(this)不会指向元素自身。所以做法是在回调函数之前把$(this)对象保存下来:

$(document).ready(function(){        $(".btnchange").on("click",function(){            var value=$(this).attr("name");            var _this=$(this);            console.log(value)            $.get("translationOnline.php",                {                    name:value                },                function(data){                    _this.parent().html(data);                });        })    })

这样就可以作用了。

0 0