javascript - .trigger('change') 有时在更改选择值中不起作用
问题描述
我有一些相互依赖的选择输入。我想分别使用用户身份验证的会话数据来选择它们。没关系,工作正常。但有时触发器不起作用,不要选择任何选项。在控制台中,所有选择值都是正确的并显示它们,但不要在输入中选择它们。有人知道原因吗?
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();
解决方案
添加后可以使用以下方法进行trigger
更改val()
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();
推荐阅读
- lua - 找不到mingw目录xmake
- javascript - 如何在 Nextjs 中清理 SCSS?
- c++ - 输入一个整数作为 int,但它输出不一样(返回 256)
- microstrategy - 有没有办法让没有过滤器面板的按钮过滤器过滤 MicroStrategy 中的数据面板?
- alembic - Alembic:更新以前的版本是否有益?
- python - 消除 Matplotlib 中数据点之间的间隙
- node.js - 使用 admin sdk 调用 Firebase 实时数据库超时
- python - 如何使用opencv和pytesseract python提取文本?
- django - 如何通过 django 会话传递“实时”数据?
- android-emulator - 设备错误:adb.exe:找不到设备“pixel_2_pie_9_0_-_api_28”