我有几个HTML元素(按钮)可以触发相同的JQuery AJAX请求。当AJAX请求成功返回时,我需要对触发AJAX请求的HTML元素进行一些更新。我理解如何执行此操作,如果我要更新要更新的元素的ID,例如ID为myDiv的项目,如下面的代码所示,但我不确定如何处理对应于触发事件的元素。
$('body').on(
'click',
'#yt25',
function(){
jQuery.ajax({
'type':'POST',
'data':$("#custom-hazard-form").serialize()+"&ajaxRequest=hazard-form",
'success':function(data) {
$('#myDiv').html('This is the new text'),
}
'url':'#',
'cache':false
});
return false;
});
我认为一个选项是将触发事件的HTML元素的id作为ajax请求'data'选项中的键值对发送,然后将其作为AJAX响应的一部分传递回客户端。然后我可以获取id并知道要更新的HTML元素。这是处理这个的最好方法还是我错过了一些更明显的东西?感谢。
答案 0 :(得分:0)
$('body').on(
'click',
'#yt25',
function(){
var _this = this;
jQuery.ajax({
'type':'POST',
'data':$("#custom-hazard-form").serialize()+"&ajaxRequest=hazard-form",
'success':function(data) {
$(_this).html('This is the new text'),
}
'url':'#',
'cache':false
});
return false;
});
您无需将其与ajax请求一起发送。 这是一种变化。您也可以这样做,为元素分配一些类,并通过该类获取这些元素。