>我创建了一个条件,当单击按钮时,它将从<input id="id" class="req">
框中获取我的 ID 的值,并显示该 ID 的关联名称并将其放在"名称<input id="name" class="req">
"框中。
所以当我输入1
时,我会得到BOB
。 非常基本。
我还有一个条件,即<input>
框都应该有值,然后才能出现特定的<div>
。 因此,默认情况下,此<div>
是隐藏的。
挣扎的部分是,每当我单击按钮时,我都会得到名称,即使我已经成功填充了我的 2 个<input>
框,<div>
仍然不会出现。
这是我的代码。
//<input> conditions
$('input.req').on("keyup keypress change", function () {
$('input.req').each(function() {
if($(this).val() != "") {
$("#content").show();
}
else {
$("#content").hide();
}
});
});
同样,如果你输入1,你会得到鲍勃。 但<div>
不会出现。 但是,如果您手动填写文本框,则会出现<div>
。
想要发生的是,输入我的ID,单击按钮,获取名称,将名称放在"我的名字<input>
"框中,然后显示<div>
。
您还应该在 Ajax 成功处理程序中选中输入框,因为到目前为止,您只在关键事件上执行此操作:
$.ajax({
url: //url,
success: function() {
$('input.req').each(function() {
if($(this).val() != "") {
$("#content").show();
}
else {
$("#content").hide();
}
});
}
})
你的问题是每次输入是变化时你都会抛出每个输入。只需删除$('input.req').each(function() {
,一切都会好起来的。