2012-02-28 2 views
0

で送信ボタンを殺す私は現在でウェブページに複数のフォームをロードしています:これは、それが必要として、フォーム、すべての作品を読み込み、誰クロム、クロムとIEで動作ロードフォームFirefoxの

$(document).ready(function() { 
    $('#content').load('php_script.php', function() { 
     $(this).find('#someForm').ajaxForm(function() { 
      alert('Success!'); 
     }); 
     $(this).find('.someOtherForm').ajaxForm(function() { 
      alert('Success!'); 
     }); 
    }); 
}); 

(submitをクリックすると、フォームのアクションで定義されたphp-scriptにリクエストが送信され、dbに追加され、警告ダイアログが表示されます)。 Firefox(v10.0.2)では、このコードはフォームをDOMに読み込んで表示しますが、いずれのフォームでもsubmitをクリックしても何も起こりません。

は、最初は、私はajaxFormを疑われる、それだけには上記のコードを変更:

$(document).ready(function() { 
    $('#content').load('php_script.php'); 
}); 

する差は、ユーザが、Firefoxのを除き(アクションとして定義スクリプトに送信されていることであり、ほぼ同様の結果が得られどこにも何も起こらない)。

Firefoxが送信ボタンを強制終了しないようにするにはどうすればよいですか?上記のコードは、私にはOKに見える

答えて

0

...

  1. は、エラーがある場合は、放火犯で見ていたことがありますか?たぶん矛盾しているIdや何かがあるかもしれません。

  2. たぶん、まだ完全にDOMにロードされたフォームありえないが、ライブ与え

  3. はドキュメントでこれを発見してみてください結合価値があるかもしれません:

が... jQueryのブラウザの使用 .innerHTMLプロパティを使用して、取得したドキュメントを解析し、現在のドキュメントに挿入します。このプロセス中、ブラウザはしばしば、または要素などのドキュメントから要素をフィルタリングします。その結果、.load()によって取得された要素は、ブラウザで直接ドキュメントを取得した場合とまったく同じではない場合があります。

フォームを検査する場合は、他のブラウザと同じですか?

+0

1. FirebugのエラーのみCSS3のグラデーションです。ページは有効なXHTMLトランスです。 JavaScriptエラーはありません。 2.それを確認するつもり、ありがとう:)。 3. Firefoxでそれを調べるときとChromeでそれを調べるときのフォームは同じです。 php_script.phpの出力には頭やhtml、本文はありませんが、読み込み時に予期しない効果がありますか? – phnom

+0

私はそれが問題を引き起こすとは思わない、ライブバインドを試してみてください。 – Manatok

+0

私はそれを修正した、私の答えを参照してください。お返事ありがとうございました:) – phnom

1

私は私の側から、悪いHTMLをそれを解決:

<table><form ...> 
    <tr>...</tr> 
</form></table> 

をする代わりに、それは次のようになります。

<form ...><table> 
    <tr>...</tr> 
</table></form> 

それがjQueryを介してロードされたので、バリがこれをキャッチしていない(と私は忘れてしまいましたフォームを提供しているページを検証するため)、そしてFirefoxが飛び出してしまった。

+0

あなたの質問にこの回答を更新として書くことができます。別の答えを書く必要はありません。 –