control_td.each(function(){
$.ajax({
url: 'control.php?udid='+$(this).attr('udid'),
cache: false,
async: true
}).done(function(data) {
$(this).html(data);
});
});
但$this
在.done
子功能中不起作用。我在这里做错了什么?
control_td.each(function(){
$.ajax({
url: 'control.php?udid='+$(this).attr('udid'),
cache: false,
async: true
}).done(function(data) {
$(this).html(data);
});
});
但$this
在.done
子功能中不起作用。我在这里做错了什么?
这是因为this
在回调中没有引用元素项。
尝试关闭一个新值。
control_td.each(function(){
var $self = $(this); // magic here!
$.ajax({
url: 'control.php?udid='+$(this).attr('udid'),
cache: false,
async: true
}).done(function(data) {
$self.html(data);
});
});
试试这个:
control_td.each(function () {
var $this = $(this);
$.ajax({
url: 'control.php?udid=' + $this.attr('udid'),
cache: false,
async: true
}).done(function (data) {
$this.html(data);
});
});
也可以设置的context
选项$.ajax
,勾选这个选项。
control_td.each(function(){
$.ajax({
url: 'control.php?udid='+$(this).attr('udid'),
cache: false,
async: true,
context: this
}).done(function(data) {
$(this).html(data);
});
});