我正在使用带有HTML表单的Twitter bootstrap-typeahead插件:
http://twitter.github.com/bootstrap/javascript.html#typeahead
运作良好。我希望行中的下一个单元格(即选择菜单)根据用户在前一单元格中的选择自动选择一个选项。这是一个例子:
如果用户输入“New South Wales”状态,我希望将Country设置为“Australia”,但可以选择使用选择菜单进行更改。同样,如果用户选择“加利福尼亚”,我希望将国家/地区设置为“美国”。
我可以很容易地扩展用于打印头状态字段的值数组,以包含相应的国家/地区值(虽然不确定格式)并且不确定这是否可行以及如何将它们组合在一起?
答案 0 :(得分:1)
对于具有各自状态的国家/地区,您需要一个javascript对象数组:
var countries = [{ name: 'USA',
states: ['Alabama', 'Alaska']},
{ name: 'Australia',
states: ['New South Wales', 'Queensland']}]; // You can add rest of the states here
DEMO: http://jsfiddle.net/WNpy5/1/
在演示中,当进入状态并且焦点远离文本框时,它会自动选择国家/地区。
答案 1 :(得分:1)
默认情况下,typeahead插件只接受一个字符串列表。我创建了一个扩展,它接受一组JSON对象,我相信这是你正在寻找的功能。
来源在这里:https://github.com/tcrosen/twitter-bootstrap-typeahead
您案例的一个例子是:
var states = [{ state: 'NY', country: 'USA'},
{ state: 'Ontario', country: 'Canada'},
{ state: 'Petoria', country: 'Petoria'}];
$('#myTextBox').typeahead({
source: states,
display: 'state',
val: 'country',
itemSelected: function(item, val, text) {
// val = name of the country
// text = name of the provice
$('#Country').val(val);
}
});