我在测试JavaScript时遇到问题。我考试的一部分看起来像

$('#activityType').val("33");
$('#favorite').click();

$('#activityType')是一个选择字段,我想选择值为“33”的选项现在我预料到了,这将是一个改变,所以我在程序中的函数
$('body').on('change', '.item-select', function() {
    var itemRow = $(this).parent().parent();
    changeBookableItemInputFields(itemRow);
});

将被处决。
$('#activityType')得到了类属性item-select,所以我不明白,为什么$('#activityType').val("33");没有变化。我更改了值,css属性就在那里。主体应该能够找到它并执行函数。
有谁能告诉我,为什么不起作用?

最佳答案

使用JavaScript更改值不会触发事件,您需要手动触发它。jQuery使用.trigger(eventName)

$('#activityType').val("33").trigger("change");

10-04 22:45