我有一個使用jQuery選項卡的頁面。在我的其中一個選項卡中,我有一個包含表單(最初隱藏)的div,我想用它將內容添加到選項卡。我在Chrome,Firefox和Safari中完美工作。但是,在IE 7中,標籤不會刷新。這篇文章的作品和數據被添加到數據庫中,但它在提交後不會顯示新內容。jQuery不刷新IE中的標籤內容
我不認爲它很重要 - 但是,僅供參考,我也使用Codeigniter PHP框架。
這裏是我的javascript:
<script type="text/javascript">
$(document).ready(function(){
// initialize the addChild form as hidden until user requests it open
$('#addChild').hide();
// open the form
$('#openDialog').click(function(){
$('#addChild').slideToggle();
return false;
});
// close the form
$('#closeDialog').click(function(){
$('#addChild').slideToggle();
return false;
});
// submit the form
$('#frmAddChild').submit(function(){
$('#addChild').slideToggle();
$.ajax({
url: '/children/add',
type: 'POST',
data: $('#frmAddChild').serialize()
//cache: false
});
//reload the children tab
$('#tabs').tabs('load',3);
return false;
});
});
</script>
而且,這裏是我的PHP/HTML:
<?php
// initialize the elements of the form
$frmAddChild = array(
'name' => 'frmAddChild',
'id' => 'frmAddChild',
'method' => 'post'
);
$child_name = array(
'name' => 'child_name',
'id' => 'child_name',
);
$child_dob = array(
'name' => 'child_dob',
'id' => 'child_dob'
);
$btnOpenDialog = array(
'name' => 'openDialog',
'id' => 'openDialog',
'value' => 'true',
'content' => 'Add Child'
);
$btnCloseDialog = array(
'name' => 'closeDialog',
'id' => 'closeDialog',
'value' => 'true',
'content' => 'Cancel'
);
// button that shows the drop down to add
echo form_button($btnOpenDialog);
?>
<div id="addChild" title="Add Child">
<?php echo form_open('children/add/',$frmAddChild); ?>
<table>
<tr>
<td>
<?php echo form_label('Child\'s Name', 'child_name'); ?>:
</td>
<td>
<?php echo form_input($child_name); ?>
</td>
</tr>
<tr>
<td>
<?php echo form_label('Date of Birth','child_dob'); ?>:
</td>
<td>
<?php echo form_input($child_dob); ?>
</td>
</tr>
<tr>
<td colspan="2" align="right">
<?php echo form_submit('submit', 'Add'); ?>
<?php echo form_button($btnCloseDialog); ?>
</td>
</tr>
</table>
<?php echo form_close(); ?>
</div>
沒有人有任何想法如何,我能得到這個在IE中正常工作?此外,如果任何人對我的結構有何評論,請告訴我。我是Codeigniter的新手,我決不是JavaScript或jQuery專家。
感謝您的幫助!
謝謝Kevin!我接受了您的建議併爲我的AJAX調用設置了.success和.error狀態。這些使我的腳本以更可預測的方式行事。 雖然,我曾經遇到過的問題是IE緩存頁面。我在這裏找到了解決方案:http://codeigniter.com/forums/viewthread/143583/ 再次感謝! – iddimu 2010-03-22 04:14:03