gpt4 book ai didi

jquery - 使用 jQuery 提交表单在 IE8 中无法正常工作

转载 作者:行者123 更新时间:2023-12-01 06:41:15 25 4
gpt4 key购买 nike

jQuery $.ajax() 似乎无法在 IE8 上正常工作,但它可以在 Firefox、Chrome 和 Safari 上正常工作。我以 JSON 格式提交表单和回复。

这是我的代码:


test.php:

<script type="text/javascript" src="jquery-1.4.2.js"></script>
<script type="text/javascript" src="jsFile.js"></script>

<form action='_test.php' method='post' class='ajaxform'>
<input type='text' name='txt' value='Test Text'>
<input type='submit' value='submit'>
</form>

<div id='testDiv'></div>

_test.php:

<?php
$arr = array( 'testDiv' => $_POST['txt'] );
echo json_encode( $arr );
?>

jsFile.js:

jQuery('.ajaxform').live('submit', function(event) {

$.ajax({
url : $(this).attr('action'),
type : $(this).attr('method'),
dataType: 'json',
data : $(this).serialize(),
success : function( data ) {
for(var id in data) {
jQuery('#' + id).html( data[id] );
}
}
});

return false;
});

行为:


在 Firefox、Chrome、Safari 中:

当我提交表单时,textfield(txt) 的值会成功填充到 DIV(testDiv) 中,而不会影响整个页面。

在 IE 中:

当我提交表单时,它只会在屏幕上显示 json 表单,如下所示:{"testDiv":"Test Text"}

如何解决IE中的这个问题?

谢谢。

最佳答案

我用这个替换了我的 jquery 代码,它适用于所有浏览器:

jQuery(document).ready(function(){

jQuery('.ajaxform').submit( function() {

$.ajax({
url : $(this).attr('action'),
type : $(this).attr('method'),
dataType: 'json',
data : $(this).serialize(),
success : function( data ) {
for(var id in data) {
jQuery('#' + id).html( data[id] );
}
}
});

return false;
});

});

我不知道这是什么,但它现在可以工作了。感谢大家参与并帮助我解决这个问题。

关于jquery - 使用 jQuery 提交表单在 IE8 中无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3656321/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com