根据选择框选项或自动完成选择,使用 JSON 中的数据设置文本输入
Set Text Input with Data from JSON depending on Selectbox Option or Autocomplete Selection
我有一个分类网站,用户为提交的每个新广告输入位置信息,该信息在 google 地图侧边栏上显示位置。但是,除非使用正确的邮政编码,否则 google 地图无法正确显示。我试图解决这个问题,但无法解决。用户通常不知道邮政编码,可能会忽略它。
这就是为什么我想将邮政编码信息存储在 JSON 文件中并在用户选择一个州时从中获取数据,邮政编码在邮政编码文本字段中自动生成。例如,当用户从选择框的下拉列表中选择 "Kuala Lumpur" 时,它应该根据 JSON 文件中存储的数据自动在邮政编码文本字段中生成“57000”。
<label>State</label>
<select name="cp_state" id="cp_state" class="dropdownlist required"><option value="">-- Select --</option><option value="Kuala Lumpur" selected="selected">Kuala Lumpur</option><option value="Labuan">Labuan</option><option value="Malacca">Malacca</option> </select>
<label>Zip/Postal Code </label>
<input name="cp_zipcode" id="cp_zipcode" type="text" class="text" placeholder="Enter zipcode" />
JSON数据
[
{
"czipcode": "57000",
"cstate": "Kuala Lumpur"
},
{
"czipcode": "75000",
"cstate": "Labuan"
},
{
"czipcode": "87000",
"ctate": "malacca"
}
]
终于解决了我的问题。我使用了 Ajax AutoComplete for jQuery,它额外添加了自动完成功能,当用户在文本字段中键入时显示,该文本字段与 json 值不断匹配。单击建议后,它将使用存储在 json.
中的相应数据更新邮政编码文本字段
<label>State</label>
<input type="text" name="cstate" id="autocomplete"/><br><br><br>
<label>Zipcode</label>
<input id="zipcode" type="text" name="zipcode"/>
<script type="text/javascript" src="au/scripts/jquery-1.8.2.min.js"></script>
<script type="text/javascript" src="au/scripts/jquery.mockjax.js"></script>
<script type="text/javascript" src="au/src/jquery.autocomplete.js"></script>
<script>
var cstates = [
{ value: 'Kuala Lumpur', data: '57000' },
{ value: 'Labuan', data: '75000' },
{ value: 'Malacca', data: '87000' }
];
$('#autocomplete').autocomplete({
lookup: cstates, // lookup suggestion from cstates json
lookupLimit: 2, //limit suggestion result display
onSelect: function (suggestion) {
$('#zipcode').val(suggestion.data);//set zipcode textfield with the data of state clicked
}
});
</script>
我有一个分类网站,用户为提交的每个新广告输入位置信息,该信息在 google 地图侧边栏上显示位置。但是,除非使用正确的邮政编码,否则 google 地图无法正确显示。我试图解决这个问题,但无法解决。用户通常不知道邮政编码,可能会忽略它。
这就是为什么我想将邮政编码信息存储在 JSON 文件中并在用户选择一个州时从中获取数据,邮政编码在邮政编码文本字段中自动生成。例如,当用户从选择框的下拉列表中选择 "Kuala Lumpur" 时,它应该根据 JSON 文件中存储的数据自动在邮政编码文本字段中生成“57000”。
<label>State</label>
<select name="cp_state" id="cp_state" class="dropdownlist required"><option value="">-- Select --</option><option value="Kuala Lumpur" selected="selected">Kuala Lumpur</option><option value="Labuan">Labuan</option><option value="Malacca">Malacca</option> </select>
<label>Zip/Postal Code </label>
<input name="cp_zipcode" id="cp_zipcode" type="text" class="text" placeholder="Enter zipcode" />
JSON数据
[
{
"czipcode": "57000",
"cstate": "Kuala Lumpur"
},
{
"czipcode": "75000",
"cstate": "Labuan"
},
{
"czipcode": "87000",
"ctate": "malacca"
}
]
终于解决了我的问题。我使用了 Ajax AutoComplete for jQuery,它额外添加了自动完成功能,当用户在文本字段中键入时显示,该文本字段与 json 值不断匹配。单击建议后,它将使用存储在 json.
中的相应数据更新邮政编码文本字段<label>State</label>
<input type="text" name="cstate" id="autocomplete"/><br><br><br>
<label>Zipcode</label>
<input id="zipcode" type="text" name="zipcode"/>
<script type="text/javascript" src="au/scripts/jquery-1.8.2.min.js"></script>
<script type="text/javascript" src="au/scripts/jquery.mockjax.js"></script>
<script type="text/javascript" src="au/src/jquery.autocomplete.js"></script>
<script>
var cstates = [
{ value: 'Kuala Lumpur', data: '57000' },
{ value: 'Labuan', data: '75000' },
{ value: 'Malacca', data: '87000' }
];
$('#autocomplete').autocomplete({
lookup: cstates, // lookup suggestion from cstates json
lookupLimit: 2, //limit suggestion result display
onSelect: function (suggestion) {
$('#zipcode').val(suggestion.data);//set zipcode textfield with the data of state clicked
}
});
</script>