2013-03-28 39 views
1

我有以下代码,在mydata.jsp中q的值为空。将inputId的值传递给mydata.jsp的正确方法是什么?如何使用jquery获得输入文本值

<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> 

回答

2

当您通过$("#inputId").val()作为参数传递给.autocomplete(),你得到从该字段的初始值事情已经输入了。这将解释为什么它是空的。

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

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

+0

如何将'inputId'的值传递给'mydata.jsp'? – user75ponic 2013-03-28 06:26:17

+0

在[doc](http://api.jqueryui.com/autocomplete/#option-source)中,查看'source'属性的字符串选项。自动填充方法将自动添加键入术语的当前值。 – jfriend00 2013-03-28 06:28:04

+0

感谢您的帮助。 – user75ponic 2013-03-28 06:53:54

1
$('#inputId').keyup(function() 
{ 
var str=$(this).val(); 
if(str!='') 
{ 
    $.ajax({ 
     type:"GET", 
     url:"mydata.jsp", 
     data:"str="+str, 
     success: function(data){ 
      alert(data); 
    } 

    }); 
} 
}); 

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

相关问题