我有2个自动完成控件。可以说第一个是 country ,第二个是 city 。 当 country 中的值更改时,如何清除 city 中的值和显示文本?从服务器检索城市列表。如果 country 已更改,则应丢弃城市列表,并且当用户开始在 city 自动填充中键入内容时,应对城市列表发出新请求。如何强迫这种行为?
jQuery 1.7.1,UI 1.8.18
答案 0 :(得分:0)
城市列表更改后,您必须再次创建城市自动填充功能。你的流程将是这样的:
关于州名更改 - >调用ajax函数从服务器获取城市列表 - >构建选项并分配给城市选择元素然后再次执行以下行。
$("#city").combobox();
希望您使用自动完成的组合框小部件。否则,只能从服务器重新创建自动完成源,json格式的更好的feth,如下所示:
var availableTags = [
"NewCity1",
"NewCity2",
"NewCity3",
"NewCity4"
];
$( "#city" ).autocomplete({
source: availableTags
});
答案 1 :(得分:0)
我尝试了一下,这对我有用:
hiddenInput.val('');
visibleInput.val(visibleInput.attr('placeholder')).addClass('WaterMarkedTextBox');
visibleInput.flushCache();
两个输入字段都是由 city 自动完成功能创建的HTML元素。
如果没有flushCache
调用,则空城市值没有新请求。