javascript - 如何使 onChange 事件对来自数据库而不是来自用户操作 Jquery 的预选数据起作用
问题描述
所以我有这样的选择代码:
<select name="id_service" id="wagan" class="form-control" required="">
<option selected="" disabled="" value="">-Pilih Cok-</option>
<option value="1" data-yuyu="1" data-service="Berlangganan" selected="">Berlangganan</option>
<option value="2" data-yuyu="2" data-service="One Time Charge">One Time Charge</option>
<option value="3" data-yuyu="3" data-service="Bandwith On Demand">Bandwith On Demand</option>
</select>
有 3 个数据项选项,它们的值分别为 1、2 和 3。我使用以下代码将侦听器附加到该元素:
$('#wagan').change(function(){
var dayu = $('#wagan option:selected').attr('data-yuyu');
if (dayu == '1'){
// Do something when the value is 1
}else if(dayu == '2'){
// Do something when the value is 2
}else if(dayu == '3'){
// Do something when the value is 3
};
});
如果用户通过自己的操作选择并提交更改,.change
则可以工作。但是,如果我之前使用以下方法设置它:
$("#wagan").val("2").change(function(){
// Do something after value is set to value 2
}
它不起作用。
我在Jquery源代码中读到:
注意:使用 JavaScript 更改输入元素的值,例如使用 .val() 不会触发事件。
如何完成?
如何首先设置值并运行 onChange 函数?
谢谢你的帮助
解决方案
推荐阅读
- html - 更改表格第一行的颜色
- javascript - 播放按钮跟随 div 中的光标
- php - 正则表达式或语句
- couchbase - 将多节点 Couchbase 与 Springboot 集成
- azure - 创建 Azure Cloud Shell 存储时遇到问题
- r - 根据列中的最大值对列进行排序 - R 数据框排列
- javascript - 无法将数据从父组件传递到子组件
- regex - 处理条件多次捕获正则表达式?
- javascript - 在子进程的数据事件中使用 setTimeout 是否有理由导致任意长时间的延迟?
- ios - 生成的 IPA 太小,我无法在我的 mac 上打开它