JQuery$.get:搜索数据响应以获取一些属性值
我正在尝试使用$.get将div替换为其更新版本。我在做这样的事情:JQuery$.get:搜索数据响应以获取一些属性值,jquery,get,replacewith,Jquery,Get,Replacewith,我正在尝试使用$.get将div替换为其更新版本。我在做这样的事情: $('.clickable').click( function() { $.get(url, function(data) { $(this).replaceWith(data); }); }); 但它似乎不起作用。我猜这美元(这个)不喜欢这样改变,还是应该这样?如果不应该,我想通过搜索数据来检索当前div的属性值,是否可能 编辑:删除了$.get(url+'.'+$(this).attr('id'
$('.clickable').click( function() {
$.get(url, function(data) {
$(this).replaceWith(data);
});
});
但它似乎不起作用。我猜这美元(这个)不喜欢这样改变,还是应该这样?如果不应该,我想通过搜索数据来检索当前div的属性值,是否可能
编辑:删除了$.get(url+'.'+$(this).attr('id')
,因为它看起来$get的行为实际上不像load()。因此,替换的div将显示整个数据…如果有人有合适的解决方案来选择数据的一部分,我将不胜感激。添加注释或其他内容
$('.clickable').click( function() {
$.get(url + ' #' + $(this).attr('id'), function(data) {
$(this).replaceWith(data); // here
});
});
在回调的作用域中,此
引用回调本身。请使用另一个变量临时存储可单击项:
$('.clickable').click( function() {
var that = this;
$.get(url + ' #' + $(this).attr('id'), function(data) {
$(that).replaceWith(data);
});
});
在您的
$.get
函数中,有一个新的作用域,因此此
与以前的此
不同。您可以将其保存在变量中:
$('.clickable').click( function() {
var elem = this;
$.get(url + ' #' + $(this).attr('id'), function(data) {
$(elem).replaceWith(data);
});
});
这是指get对象,您可以在调用get操作之前将其设置为标识符 i、 e
$('.clickable').click( function() {
var replaceable = this;
$.get(url + ' #' + $(this).attr('id'), function(data) {
$(replaceable).replaceWith(data);
});
});