jquery-ui – 如何传递一个额外的参数到Jquery自动完成字段?

我在我的一个表单中使用JQuery自动填充。

基本形式从我的数据库中选择产品。这工作很好,但我想进一步发展,使只有从一个特定的邮政编码发送的产品被返回。我有后端脚本找出来。我只需要制定出最好的方式来传递邮政编码到这个脚本。

这是我的形式看起来。

<form>

<select id="zipcode">

<option value="2000">2000</option>
<option value="3000">3000</option>
<option value="4000">4000</option>

</select>

<input type="text" id="product"/>

<input type="submit"/>

</form>

这里是JQuery代码

$("#product").autocomplete
({
     source:"product_auto_complete.PHP?postcode=" + $('#zipcode').val() +"&",minLength: 2,select: function(event,ui){

                             //action

                                 }
});

这段代码在一定程度上工作。但只返回第一个邮政编码值,不管实际选择的值。我猜想发生了什么,源URL是加载页面,而不是当选择菜单更改时。有没有解决的办法?或者有更好的方式整体来实现我的后果吗?

解决方法

您需要对源调用使用不同的方法,如下所示:
$("#product").autocomplete({
  source: function(request,response) {
    $.getJSON("product_auto_complete.PHP",{ postcode: $('#zipcode').val() },response);
  },ui){
    //action
  }
});

这种格式允许你传递任何值,当它运行时,而不是当它的绑定。

相关文章

jQuery插件的种类 1、封装对象方法 这种插件是将对象方法封装起来,用于对通过选择器获取的jQuery对象进...
扩展jQuery插件和方法的作用是非常强大的,它可以节省大量开发时间。 入门 编写一个jQuery插件开始于给...
最近项目中需要实现3D图片层叠旋转木马切换的效果,于是用到了jquery.roundabout.js。 兼容性如图: ht...
一、什么是deferred对象? 开发网站的过程中,我们经常遇到某些耗时很长的javascript操作。其中,既有异...
AMD 模块 AMD(异步模块定义,Asynchronous Module Definition)格式总体的目标是为现在的开发者提供一...