1

我有以下代码,在 mydata.jsp 中 q 的值为空。将 inputId 的值传递给 mydata.jsp 的正确方法是什么?

<input type="text" size="25" name="inputId" id="inputId" />

和 Jquery 脚本作为

 <script type="text/javascript">
$(function() {
    $("#inputId").autocomplete({

        source: "mydata.jsp?q="+$( "#inputId" ).val(),
        select:function(event,ui) {
            $("#hid").val(ui.item.email)
        }
    });
});


</script>
4

2 回答 2

2

当您$( "#inputId" ).val()作为参数传递给 时.autocomplete(),您将在输入任何内容之前从该字段获取初始值。这可以解释为什么它是空的。

如果您使用自动完成的字符串版本,它可以自动将键入的值添加到 URL。请参阅文档以获取source 此处的字符串版本。

如果您希望 的 URLsource是动态生成的 URL,那么您还可以传递一个函数作为source并且该函数中的代码可以生成 URL/替代项。请参阅此处source的选项文档。

于 2013-03-28T06:22:49.720 回答
1
 $('#inputId').keyup(function()
{
var str=$(this).val();
if(str!='')
{
  $.ajax({
      type:"GET",
      url:"mydata.jsp",
      data:"str="+str,
      success: function(data){
          alert(data);
     }

  });
}
});

像这样试试。希望它会给你一些解决方案。

于 2013-03-28T06:37:55.310 回答