怎么在$.ajax()方法的success回调方法中获取当前对象
如何在$.ajax()方法的success回调方法中获取当前对象?
请问 1.在success的function中如何直接获取$("h4")这个对象?
2.在success的function()中使用$(this)是指的哪个对象?
在此先谢谢各位了 !
------解决思路----------------------
直接取不到,非要在外边缓存一下才能取到。self。
里边的this指向的是那个对象:
------解决思路----------------------
既然知道,怎么就绕不过弯子来呢?
你传递给 $.ajax 的不是一个对象吗?在这个对象里 this 不就是对象本身吗?
你 alert(JSON.stringify(this)) 和 alert(JSON.stringify($(this))) 不就观察到了吗
------解决思路----------------------
$.ajax就是一个方法而且,然后将alert的返回值作为$.ajax的参数。。和jquery没关系。。
$("h4").toggle(function() {
var obj = $(this).siblings("div:gt(0)");//此处$(this)代表的是当前的$("h4")对象
$.ajax({
url : "showAjax.action",
type : "get",
data : "id=" + $(this).prev().val(),
success : function(result) {
// 如果在此处使用$(this)和在外面使用$(this)代表的不是同一个对象
obj.html(result).show();
},
error : function() {
alert("发生错误!");
}
});
}, function() {
var obj = $(this).siblings("div:gt(0)");
obj.hide();
});
请问 1.在success的function中如何直接获取$("h4")这个对象?
2.在success的function()中使用$(this)是指的哪个对象?
在此先谢谢各位了 !
------解决思路----------------------
直接取不到,非要在外边缓存一下才能取到。self。
里边的this指向的是那个对象:
{
url : "showAjax.action",
type : "get",
data : "id=" + $(this).prev().val(),
success : function(result) {
// 如果在此处使用$(this)和在外面使用$(this)代表的不是同一个对象
obj.html(result).show();
},
error : function() {
alert("发生错误!");
}
}
$("h4").toggle(function() {
var self = $(this);
var obj = $(this).siblings("div:gt(0)");//此处$(this)代表的是当前的$("h4")对象
$.ajax({
url : "showAjax.action",
type : "get",
data : "id=" + $(this).prev().val(),
success : function(result) {
// 如果在此处使用$(this)和在外面使用$(this)代表的不是同一个对象
obj.html(result).show();
},
error : function() {
alert("发生错误!");
}
});
}, function() {
var obj = $(this).siblings("div:gt(0)");
obj.hide();
});
------解决思路----------------------
既然知道,怎么就绕不过弯子来呢?
你传递给 $.ajax 的不是一个对象吗?在这个对象里 this 不就是对象本身吗?
你 alert(JSON.stringify(this)) 和 alert(JSON.stringify($(this))) 不就观察到了吗
------解决思路----------------------
$.ajax就是一个方法而且,然后将alert的返回值作为$.ajax的参数。。和jquery没关系。。
function abc(p) {
alert('调用abc的方法传递的参数P:'+p);
}
abc(alert('执行alert后返回值作为abc的参数'))