我正在使用Jquery表单插件通过ajax发送我的表单。服务器端 php脚本处理表单数据并返回以下JSON字符串 格式:
{"error":true,"message":"The username or email already exists. Please try again."}
这是发送表单的ajax:
$('#register_form').ajaxForm({
dataType: 'json',
contentType: "application/json; charset=utf-8",
success: showResponse
});
});
然后在我的html页面上,我有以下脚本:
<script>
function showResponse(data){
if (data.error == true){
//display the top error div
if ($("#registration_error").is(":hidden")) {
$("#registration_error").html(data.message);
$("#registration_error").slideDown("slow");
}
}
else{
alert('registration complete');
}
}
</script>
错误显示在我的HTML页面中的注册表单上方。这个 适用于chrome和firefox。然而,IE正在消除形式和 显示一个只有JSON回复的新页面,如下所示:
{“error”:true,“message”:“用户名或电子邮件已存在。请重试。”}
我似乎无法弄清楚为什么IE有这个问题。 请帮忙。
答案 0 :(得分:1)
尝试在陈述ajaxForm
之前停止提交表单$('#register_form').submit(function(ev){ ev.preventDefault(); });
看起来jquery无法成功阻止在IE上提交表单。你还使用哪种IE?