我有以下表格:
<div id="divSignup">
<form method="post" name="signupForm" id="signupForm">
<input type="text" id="email" name="email" value="" class="email2"/>
<input type="hidden" id="SAMID" name="SAMID" value="" />
<input type="hidden" id="x_building" name="x_building" value="" />
<input type="hidden" id="x_street" name="x_street" value="" />
<div id="divSignupForm">
<cfinclude template="signup1.cfm">
</div>
</form>
</div>
带有提交按钮的模板随<cfinclude>
标签动态加载。在signup1.cfm 的提交上,jQuery 验证表单,然后更改表单名称和id 属性并加载新表单,再次使用自己的提交按钮。
$('#divSignupForm').load('signup2.cfm',function(){
$('#signupForm').attr({'name':'signupForm2','id':'signupForm2'});
})
这一切在 FF 和 Chrome 和 IE9 中都很好用,但在 IE8 中却不行。
在 IE8 中,它似乎加载了新表单,但不在指定的 div 内。它似乎正在加载指定的 div。当我用以下内容提醒 div 的内容时:
alert($('#divSignupForm').html());
我得到以下结果,它清楚地显示</FORM>
了加载内容上方的结束标记。注意:包含的模板都没有<form>
标签。父级中只有一个表单标签集。
难道是IE8不喜欢的加载表单中的一些标签?可能的 jQuery 冲突?该网站也使用 MooTools。