我正在尝试执行 .blur()
,根据哪个标签失去焦点来更改参数。但是,我希望能够在 ajax 请求中发送不同的对象,具体取决于哪个 id 失去焦点。作为 jquery 和 javascript 的新手,我不知道如何做到这一点。我可以构建 2 个相同但发送不同对象的函数,但我更喜欢构建一个。
代码:
function ajaxRequest(event, endpoint, payload, request) {
event.preventDefault();
$.ajax({
url: endpoint,
type: request,
data: payload,
success: function() {
console.log("test")
}
});
}
//pseudo code
$("#signup-email, #signup-username").blur(function(event) {
if (id == "signup-email") {
var payload = {"test1": 1};
} else if (id == "signup-username") {
var payload = {"test2": 0}
}
ajaxRequest(event, "auth/check_availability/", payload,"GET");
});
HTML:
<tr><th></th><td><input id="signup-username" maxlength="50" name="username" placeholder="Username" type="text" /></td></tr>
<tr><th></th><td><input id="signup-email" maxlength="50" name="email" placeholder="Email" type="email" /></td></tr>
最佳答案
您从未设置id
。使用 this.id
获取他们点击的元素的 ID。
$("#signup-email, #signup-username").blur(function(event) {
if (this.id = "signup-email") {
var payload = {"test1": 1};
} else if (this.id = "signup-username") {
payload = {"test2": 0}
}
ajaxRequest(event, "auth/check_availability/", payload,"GET");
});
关于javascript - 使用 .blur() 通过 ajax 发送不同的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30044709/