问题描述
我正在使用 selectize.js 处理 2 级链接选择,当我更改 costCenter 下拉菜单时,我已经让 Ajax 返回,但返回的选项没有在 jobCode 子选择中呈现。我使用 selectize.js State/City 示例作为模板。但我不确定如何将我的 JSON 数据返回到子选择中。
jQuery.noConflict();
jQuery().ready(function() {
var xhr;
var select_costCenter,$select_costCenter;
var select_jobCode,$select_jobCode;
$select_costCenter = jQuery('#costCenter').selectize({
onChange: function(value) {
if (!value.length) return;
select_jobCode.disable();
select_jobCode.clearOptions();
select_jobCode.load(function(callback) {
xhr && xhr.abort();
xhr = jQuery.ajax({
url: '/ajax/ajax_ccjcLookup.cfm',type: "GET",data: {
"type":"jobCode","cc":value
},dataType: 'json',success: function(results) {
//for (var key in results) {
// alert('['+results[key]['JOBCODE'] +'] ' + results[key]['JOBCODENAME']);
//}
console.log(results);
select_jobCode.enable();
callback(results);
},error: function() {
callback();
}
})
});
}
});
// normal Selectize a list of JobCodes
$select_jobCode = jQuery('#jobCode').selectize({
valueField: 'id',labelField: 'name',searchField: ['name']
});
select_jobCode = $select_jobCode[0].selectize;
select_costCenter = $select_costCenter[0].selectize;
select_jobCode.disable();
});
我的控制台显示返回的 JSON 数据:
(3) [{…},{…},{…}]
0:
COSTCENTER: "6100"
COSTCENTERNAME: "Telecomm"
JOBCODE: "1803"
JOBCODENAME: "Certified Technician"
__proto__: Object
我想在 jobCode select 中填充的是与此行类似的三行
<select id="jobCode" name="jobCode">
<option value="1803">Certified Technician</option>
</select>
从 selectize.js 示例中我不清楚 JSON 是否需要不同的格式来填充子选择?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)