我有一个带输入的表单。 当我提交表单并返回时,此输入将恢复为默认值。
通常我会这样做:
$(document).ready(function(){
$('#selectCountry').val('<?php echo $country ?>');
});
但是在JQuery mobile中,由于Ajax包装,$(document).ready在表单提交后不会触发。
有没有办法解决这个简单但烦人的问题?
答案 0 :(得分:0)
<强>更新强>
如果您可以在页面加载时加载值,那会更好。
<select id="selectCountry">
<?php
foreach ($countries as $country){
echo '<option value="' . $country . '"';
if($country == $selectedCountry){
echo ' selected="selected"';
}
echo '>' . $country . '</option>';
}
?>
</select>
再次更新
这是你为jquery mobile做的。
$('#selectCountry').live('pagecreate',function(){
$(#'selectCountry').val('<?php echo $country; ?>');
});
以前的建议 - 你能使用.live()函数吗?
$( '#selectCountry')。住(函数(){ $(# 'selectCountry')VAL( ''); });
答案 1 :(得分:0)
改变这个:
$(document).ready(function(){
$('#selectCountry').val('<?php echo $country ?>');
});
到此:
$(document).ready(function(){
init()
});
function init() {
$('#selectCountry').val('<?php echo $country ?>');
}
然后在页面底部,您可以直接调用init():
<script type='text/javascipt'>
init()
</script>