我正在尝试开发一个用PHP编写的网站,其中包括一个页面,用户可以使用该页面在网站上进行注册。
在选择此页面的国家/地区部分中,我尝试使用LOOPJ(http://loopj.com/jquery-tokeninput/demo.html)jQuery Autocomplete脚本。
当我尝试搜索并提出建议列表时,我想发送位于表单文本框中的另一个字段的数据。因此,我尝试使用以下代码:
$(document).ready(function() {
var countryfrom = $("input#country2").val();
$("#city-input-custom-limits").tokenInput("autocomplete/city_search.php?country=" + countryfrom, {
searchDelay: 1000,
minChars: 3,
tokenLimit: 1
});
});
一切正常。但是,当我更改“ country2”文本框的值时,
countryfrom
的值不会更改,并且country2
的初始值会返回到city_search.php
页面。谁能提出建议,为什么更改
countryfrom
时country2
的值不会更改? 最佳答案
您应该听keyup
事件:
// Cache the element
var $elem = $("#city-input-custom-limits");
$("#country2").on('keyup', function() {
var country = $.trim(this.value);
$elem.tokenInput("autocomplete/city_search.php?country=" + country, {
searchDelay: 1000,
minChars: 3,
tokenLimit: 1
});
}).triggerHandler('keyup'); // execute the handler on DOM ready
关于javascript - Javascript变量似乎是静态的,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18803515/