我在测试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-attribute就在那里。身体应该能够找到它并且应该执行该功能。
有人可以告诉我,为什么它不起作用?
答案 0 :(得分:6)
使用JavaScript更改值不会触发事件,您需要手动触发它。 jQuery通过.trigger(eventName)
$('#activityType').val("33").trigger("change");
答案 1 :(得分:2)