页面加载时也触发onchange html事件
问题描述:
好吧我在选择字段上有onchange事件。它现在效果很好。当下拉“网络”更改时,刷新第二个下拉菜单。我也希望顶部的ajax代码在页面加载以及onchange时触发,以便第二个列表被填充。这是由于它在编辑页面上。下面是使用第一页面加载时也触发onchange html事件
function get_cities(networks)
{
$.ajax({
type: "POST",
url: "select.php", /* The country id will be sent to this file */
beforeSend: function() {
$("#folder").html("<option>Loading ...</option>");
},
//data: "idnetworks="+networks,
data: "idnetworks="+networks +"&doc="+ <?php echo $row_rs_doc['parentid']; ? >,
success: function(msg){
$("#folder").html(msg);
}
});
}
现在两个下拉框
<label for="networks" ></label>
<select name="networks" id="networks" onChange='get_cities($(this).val())'>
<?php
do {
?>
<option value="<?php echo $row_rs_net['idnetworks']?>"<?php if (!(strcmp($row_rs_net['idnetworks'], $row_rs_doc['network']))) {echo "selected=\"selected\"";} ?>><?php echo $row_rs_net['netname']?></option>
<?php
} while ($row_rs_net = mysql_fetch_assoc($rs_net));
$rows = mysql_num_rows($rs_net);
if($rows > 0) {
mysql_data_seek($rs_net, 0);
$row_rs_net = mysql_fetch_assoc($rs_net);
}
?>
</select>
<select name="folder" id="folder">
</select>
答
您可以使用.trigger()
触发change
事件到选择框,因此平变化的代码将被称为像它会如果用户只是切换的选项。
jQuery('#networks').trigger('change');
只需将其加载到页面的加载事件/函数中即可。
jQuery(document).ready(function() {
jQuery('#networks').trigger('change');
});
答
我不是100%清楚你想要什么,但标准的方式做一些与jQuery当页面Ajax调用IM装,是用
$(document).ready(handler)
这也是在等待,直到页面是“准备好”,这是更好的。
所以,在你的文件头你有这样的事情......
<script type="text/javascript">
$(document).ready(function(){
do_some_stuff();
});
</script>
答
你就不能调用get_cities($('#networks').val())
当DOM准备好了?
$(function() { // will be run by jQuery when DOM is ready
get_cities($('#networks').val());
});
伙计们你们都是传说,这个网站还有袜子。在我询问本网站之前花了3天时间。再次感谢你们!!!!!!!! – 2012-07-18 13:26:54