【发布时间】:2013-02-21 13:20:38
【问题描述】:
我有两个通过 Ajax 更新的下拉框,手动使用时都可以正常工作。
用户单击第一个下拉菜单并选择一个进行 Ajax 调用的项目并更新第二个下拉框。当用户单击第二个下拉 Ajax 响应更新表单时。
现在我的问题: 我希望能够使用 URL 将用户发送到该表单并传递两个变量,以便表单检查变量并自动更新两个下拉列表。我能够在没有任何问题的情况下更新第一个下拉菜单并触发更改事件。但是由于某种原因,第二个下拉框的值没有更新。
以下是我拥有的代码的 sn-p:
jQuery('#jform_make').val('<?php echo $make; ?>');
jQuery('#jform_make').trigger('change', function() {
console.log("state changed");
jQuery('#jform_service').val('<?php echo $service; ?>');
jQuery('#jform_service').change();
});
//jQuery('#jform_make').change( function(){
jQuery('#jform_make').bind('change', function() {
console.log("state changed");
});
这甚至不会在控制台中记录任何内容。
更新:
jQuery('#jform_make').val('<?php echo $make; ?>').change();
jQuery('#jform_make').change(function(event) {
console.log(jQuery(this).val());
});
谢谢
【问题讨论】:
-
这里没有更新第二个下拉菜单的代码。提供一个完整的Short, Self Contained, Correct, Example怎么样?
-
添加了更多代码,当第一个下拉列表更新时,我在控制台日志中看不到任何内容,它还会更新第二个下拉列表。
标签: jquery bind onchange eventtrigger