我有一些相互依赖的选择输入。我想用用户身份验证的会话数据分别选择它们。这没问题,而且运行得很好。但有时触发器不起作用,不要选择任何选项。在控制台中,所有的选择值都是正确的,并显示它们,但不要在输入中选择它们。有谁知道原因吗?
var req = new RequestManager({
route: '/organization/session/',
type: 'GET',
onSuccess: function (result) {
console.log(result.is_school,'select school',result);
if( result.is_school === true) {
$('#organization').val(result.id);
$('#organization').trigger('change');
$('#educational_branch_id').val(result.id);
$('#educational_branch_id').trigger('change');
if(result.elementary === true) {
$('#educational_section_id').val(result.section_id);
$('#educational_section_id').trigger('change');
}
}
}
});
req.send();发布于 2019-09-08 15:55:17
不是使用
$('#organization').val(result.id); 使用
$('#organization option[value='+result.id+']').attr('selected', true);用于使该值成为选中状态的select。
发布于 2019-09-08 16:05:12
添加val()后,可以使用以下方法对更改执行trigger操作
var req = new RequestManager({
route: '/organization/session/',
type: 'GET',
onSuccess: function (result) {
console.log(result.is_school,'select school',result);
if( result.is_school === true) {
$('#organization').val(result.id).trigger('change');
$('#educational_branch_id').val(result.id).trigger('change');
if(result.elementary === true) {
$('#educational_section_id').val(result.section_id).trigger('change');
}
}
}
});
req.send();您可以使用两种方式在增值后触发更改
1) $('#educational_section_id').val(result.section_id).trigger('change');或
2) $('#educational_section_id').val(result.section_id).change();https://stackoverflow.com/questions/57840079
复制相似问题