function test() {
$.getJSON("/Home/GetAp", function (result) {
$.each(result, function () {
if (this.is_disabled == "False") {
var a = $("#MainDiv")
.append('<div id="imagewrap"><img id="infobutton" src="/Content/information%20icon.png" /></div>')
.val(this.id);
} else if (this.is_disabled == "True") {
var a = $("#MainDiv")
.append('<div id="imagewrap"><img id="infobutton2" src="/Content/information%20icon.png" /></div>')
.val(this.id);
} else {
return null;
}
})
})
}
我如何嵌套和ajax函数能够发布a.val(),以便当用户单击任何$("#infobutton")时,他们将能够使用该按钮的val,这将是特定于该按钮的 id
$("#infobutton").click(function () {
$.ajax({
type: "POST",
contentType: 'application/json; charset=utf-8',
url: "/Home/setID",
data: JSON.stringify({ id: this.id }),
success: function (result) {
}
});
});
最佳答案
不要让您的逻辑依赖于 DOM 元素的重复 id
,而是使用 class
。
使用事件委托(delegate)为事件注册时存在的元素以及稍后将创建的元素注册事件处理程序。
.append('<div id="imagewrap"><img class="infobutton" src="/Content/information%20icon.png" /></div>')
$(document).on("click",".infobutton",function () {
$.ajax({
...
});
});
关于javascript - 在 json get 中嵌套 ajax post,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42007085/