如何在远程函数中传递两个值?

时间:2015-11-17 12:50:10

标签: javascript php jquery

我想将多个值传递到search.php页面,我该怎么做?

 <html>
  <head>
    <title>Ajax Search Box using PHP and MySQL</title>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
    <script src="typeahead.min.js"></script>
    <script  >
    $(document).ready(function(){
    $('input.typeahead').typeahead({
        name: 'typeahead',
        remote: 'search.php?key=%QUERY',
        
        prefetch: 'search.php',
        limit : 10
    });
});
    </script>
</style>
  </head>
  <body>
        <h1>Ajax Search Box using Node and MySQL</h1>
         <button type="button" >Visit Tutorial</button>
        <input type="text" name="typeahead" class="typeahead" autocomplete="off" spellcheck="false" placeholder="Type your Query">
  </body>
</html>

3 个答案:

答案 0 :(得分:1)

只需使用&amp;不适用于typeahead,您需要在设置之前使用replace来处理查询字符串。

$('#Last_Name').typeahead({
  name: 'typeahead',
  remote: {
    url: 'Search.pl?query=%QUERY',
    replace: function(url, uriEncodedQuery) {
      var QUERY2 = $("#textfield").val(); // get other field value
      if (!val) return url;
      return url + '&Key2=' + encodeURIComponent(QUERY2)
    },
   limit : 10
});

编辑后:

我创建了一个带有两个输入框的小提琴,一个具有typeahead和其他输入的值只是通过类型头传递你将通过网络面板(firebug)看到它或者你是否用来查看你可以看到的ajax调用

http://suggestqueries.google.com/complete/search?client=chrome&q=%QUERY&newField=10&callback=jQuery191022225840536777897_1447822862109&_=1447822862110

其中“newField”是另一个输入字段

Here The Working Fiddle

答案 1 :(得分:0)

您需要添加&来分隔变量。对于您的代码,请执行以下操作。

$('input.typeahead').typeahead({
   name: 'typeahead',
   remote:'search.php?var1=value1&var2=value2',
   limit : 10
});

答案 2 :(得分:0)

有两种方法。第一个是创建一个FORM并发送表单的所有变量,比如这个

url: 'Search.pl?' + $( "#myUrl" ).serialize(),

另一种方法是添加所需的所有变量,用&#34;&amp;&#34;

分隔
url: 'Search.pl?var1=' + value1 + '&var2=' + value2,