2015-02-07 57 views
1

我有2个<select>输入:jQuery和阿贾克斯 - 加载项的选择输入时,页面加载

<select id="state"> 
    <option value="" selected>Select</option> 
    <option value="california">California</option> 
    <option value="new-york">New York</option> 
</select> 

<select id="city"> 
    <option value="">Select</option> 
</select> 

而jQuery的/ AJAX代码:

$('#state').change(function() { 
    var id=$(this).val(); 
    var dataString = 'state='+id; 
    $.ajax({ 
     type: 'POST', 
     url: scriptpath+'../ajax/fields.php', 
     data: dataString, 
     cache: false, 
     success: function(output) { 
      $('#city').html(null); 
      $('#city').append(output); 
     }, 
    }); 
}); 

说明:一切正常。 #city输入根据#state输入值而变化...现在,如果我将"california"的页面加载为default值 - #city输入不会更改,因为它使用.change()事件。页面加载时,如何检测#state输入上的选定值?我试过$('#state').on("change load",function() {没有成功。

任何想法?在此先感谢

+0

使用命名函数来代替匿名的,并调用它的页面加载。 – Andreas 2015-02-07 23:54:43

回答

2

只是触发change事件时,第一个页面加载:

$('#state').change(function() { 
    //your code... 
}).change();//trigger on page load 
+1

啊,这个伎俩。谢谢! – Daniel 2015-02-07 23:58:04