Javascript搜索问题手册Keypress

时间:2016-06-16 07:24:05

标签: javascript jquery html

在下面的示例中,我将选择列表选项从一个字段复制到另一个字段(从id“email”到“Mail”)。因此,如果我选择“帐户”,它将被添加到文本搜索字段中。此问题与“搜索”字段有关。即使该值正在文本搜索框中进行复制/粘贴,但在我手动按下该搜索框中的任何键之前,搜索不会显示任何结果。有人可以建议我如何解决这个问题?

我正在使用filterz搜索模型来填充每个按下的键的搜索结果 - http://yiotis.net/filterizr/

$(function() {
  $("#email").change(function() {
    $('#mail').val(this.value);
  });
});
<form id="form1">
  <select id="email" name="a" size="5" style="width: 400px;">
    <option value="Account">Account</option>
    <option value="Outlook">Outlook</option>
    <option value="Mobile">Mobile</option>

  </select>
</form>
<form id="form2">
  <input name="text" type="text" data-search="data-search" id="mail" />

</form>

2 个答案:

答案 0 :(得分:0)

只需在设置值后调用#mail上的更改事件。

$(function() {                                     
    $("#email").change(function() {                  
        $('#mail').val(this.value);    
      $('#mail').change();
    });
  $('#mail').change(function(){ 
    console.log("serach now");
  });
  
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form id="form1">
      <select id="email" name="a" size="5" style="width: 400px;">
        <option value="Account">Account</option>
        <option value="Outlook">Outlook</option>
        <option value="Mobile">Mobile</option>

      </select>
    </form>
    <form id="form2">
        <input name="text" type="text" data-search="data-search" id="mail" />
      
    </form>

答案 1 :(得分:0)

您需要手动触发keyup事件,如下所示:

$(function() {
  $("#email").change(function() {
    $('#mail').val(this.value).trigger("keyup"); // manually trigger keyup event

  });
});
<form id="form1">
  <select id="email" name="a" size="5" style="width: 400px;">
    <option value="Account">Account</option>
    <option value="Outlook">Outlook</option>
    <option value="Mobile">Mobile</option>

  </select>
</form>
<form id="form2">
  <input name="text" type="text" data-search="data-search" id="mail" />

</form>