1

私は次のフォームを持っています:

<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 の OnSubmit で、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>親に設定されたフォーム タグは 1 つだけです。

ロードされたフォーム内の IE8 が気に入らないタグ​​でしょうか? jQueryの競合の可能性? このサイトは MooTools も使用しています。

ここに画像の説明を入力

4

0 に答える 0