1

我创建了一个条件,当单击按钮时,它将从框中获取我的ID<input id="id" class="req">的值,并将显示该 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,你会得到 bob。但<div>不会出现。但如果你手动填写文本框,<div>就会出现。

我想要发生的是,输入我的ID,单击按钮,获取名称,将名称放在我的名称 <input>框中并<div>显示。

4

2 回答 2

0

您的问题是每次输入更改时都会抛出每个输入。只需删除$('input.req').each(function() {,一切都会好起来的。

于 2013-10-01T06:16:17.530 回答
0

您还应该检查 Ajax 成功处理程序中的输入框,因为目前您只在关键事件上执行此操作:

$.ajax({
   url: //url,
   success: function() {
      $('input.req').each(function() { 
         if($(this).val() != "") {
            $("#content").show();
         }
         else {
            $("#content").hide();
         }
      });
   }    
})
于 2013-10-01T06:14:36.840 回答