当用户在下拉框中选择项目时是否有特定事件?我正在创建一个使用多个下拉框的相当大的表单。在加载时,除第一个之外的所有选项都被禁用,因为用户选择了第一个选项,第二个框中的选项使用 AJAX 更改,我想删除禁用的属性。
$('#site_id').on('change', function(event) {
$('#access_type_id').removeAttr('disabled');
});
我遇到的问题是,.change()
当下拉菜单中的选项发生变化时,在我真正想要它们之前启用了以下下拉框,这似乎被解雇了。一旦用户在上一个下拉列表中做出选择,我是否可以使用替代事件来代替更改以仅“启用”表单字段?
更新
我设法通过根本不使用更改事件并将我的 removeAttr 放在我的 AJAX 调用的成功部分来解决这个问题。下面是一个例子。这使我能够在填充其选项时启用“下一个”下拉菜单。
$('#access_speed_id').on('select2-blur', function(event){
$.ajax({
async: true,
data: $('#access_speed_id').serialize(),
dataType: 'html',
success: function(data, textStatus) {
$('#cdr_id').removeAttr('disabled');
$('#cdr_id').html(data);
},
type: 'post',
url: '/services/specificCdrs'
});
});