
本文档旨在指导开发者如何在TomSelect下拉选择器中,通过Ajax请求获取数据后,正确设置选中值。常见的.val().change()方法在TomSelect中可能失效,本文将提供一种有效的解决方案,并附带示例代码,帮助你快速解决类似问题。
在使用TomSelect时,直接使用$('#homebasepeg').val(data.hmb_id).change();方法设置选中值通常无法生效。这是因为TomSelect需要通过特定的方法来添加选项并设置选中值。
以下是一种通过Ajax获取数据后,正确设置TomSelect选中值的步骤:
获取数据并格式化选项:首先,你需要通过Ajax请求获取数据。然后,将获取的数据转换为TomSelect可识别的选项格式。通常,TomSelect的选项需要包含value和text两个属性。
添加选项到TomSelect:使用addOption()方法将格式化后的选项添加到TomSelect实例中。
设置选中值:使用setValue()方法设置TomSelect的选中值。
以下是一个完整的示例代码,演示了如何通过Ajax获取数据并设置TomSelect的选中值:
// TomSelect初始化代码
let hmb_peg = new TomSelect("#homebasepeg", {
copyClassesToDropdown: false,
dropdownClass: 'dropdown-menu ts-dropdown',
optionClass:'dropdown-item',
controlInput: '<input>',
render:{
item: function(data,escape) {
if( data.customProperties ){
return '<div><span class="dropdown-item-indicator">' + data.customProperties + '</span>' + escape(data.text) + '</div>';
}
return '<div>' + escape(data.text) + '</div>';
},
option: function(data,escape){
if( data.customProperties ){
return '<div><span class="dropdown-item-indicator">' + data.customProperties + '</span>' + escape(data.text) + '</div>';
}
return '<div>' + escape(data.text) + '</div>';
},
},
});
// Ajax请求代码
$(document).on('click','#btneditpgw',function(){
var id = $(this).attr('data-id');
$.ajax({
url : "/pegawaidetails/" + id,
type: "GET",
dataType: "JSON",
success: function(data)
{
// 格式化选项
var options_homebase = [data].map(function(item) {
return { value: item.hmb_id, text: item.hmb_name };
});
// 添加选项
hmb_peg.addOption(options_homebase);
// 设置选中值
var selectedValue_hmb = { value: data.hmb_id, text: data.hmb_name };
hmb_peg.setValue(selectedValue_hmb.value);
$('#modal-editpegawai').modal('show');
},
error: function (jqXHR, textStatus, errorThrown)
{
console.log(jqXHR);
alert('Error get data from ajax');
}
});
});代码解释:
通过使用addOption()和setValue()方法,可以有效地解决TomSelect在Ajax响应后设置选中值的问题。这种方法确保了TomSelect能够正确识别和显示选中的选项。希望本文档能够帮助你更好地使用TomSelect组件。
以上就是TomSelect:Ajax响应后设置选中值的正确方法的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号