我的文档加载并使用URL中的变量(GET变量),并将<select>
元素的选定值更改为URL中指定的值
这很简单,因为当文档加载时,<select>
已被填充,我只需要更改所选的值。
第二个<select>
通过ajax填充来自第一个(嵌套类别的东西)的数据,我可以在“文档加载”上填充它,但我不知道如何更改其选定的值。 / p>
我知道可能必须完成委托事件,但我只是通过点击事件等来完成。
我尝试过的事情:
取自jQuery文档网站:
$( "#select-with-ajax-vals" ).on( "change", function( event ) {
console.log("hello"); //works
$('#select-with-ajax-vals').val(value_from_the_url); //doesn't work but the same exact code pasted in the console works.
});
$(document).ready(function(){
//populate the lists
....
//lists populated etc
$('#select-with-ajax-vals').trigger("change");
});
代码已经过简化,但你明白了。
答案 0 :(得分:2)
正如您所提到的,数据是通过ajax填充的。我认为发生的是当你在文件加载时触发#select-with-ajax-vals。数据尚未填充。
您可能需要尝试以下代码:
$( document ).ajaxStop(function() {
$( "#select-with-ajax-vals" ).on( "change", function( event ) {
console.log("hello"); //works
$('#select-with-ajax-vals').val(value_from_the_url); //doesn't work but the same exact code pasted in the console works.
});
$('#select-with-ajax-vals').trigger("change");
});
答案 1 :(得分:0)
修正了将函数调用传递给.success ajax事件
的问题