2012-01-13 14 views
0

以下はFFとChromeで完璧に動作します。 IE8について何か不満がありますか?IE8でJQueryのform.Submit()を使用すると例外が発生するのはなぜですか?

<!DOCTYPE html> 
<html> 
    <head> 
     <script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.7.1.min.js" type="text/javascript"></script> 
     <script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.9/jquery.validate.js" type="text/javascript"></script> 
    </head> 
    <body> 
     <form action="http://www.thisurlisfake.com" id="myForm" method="post"> 
      <input type="text" id="myText" class="required" /> 
      <input type="submit" id="submit" name="submit" /> 
     </form> 
     <script language="javascript" type="text/javascript"> 
      jQuery(document).ready(function() { 
       jQuery("#myForm").validate(
       { 
        submitHandler: function (form) { 
         form.Submit(); 
        } 
       }); 
      }) 
     </script> 
    </body> 
</html> 

あなたはjQueryの検証が動作し、警告メッセージを表示するテキストボックスに何も入力しないでください。

テキストボックスに何かを入力すると、JQueryの検証が成功し、submitHandlerコードが呼び出されます。明らかに、私はすべての余分なロジックを削除しましたが、基本的にはform.Submit()を呼び出すと仮定します。

この行 "form.Submit();" "エラー:オブジェクトがこのプロパティまたはメソッドをサポートしていません"

+2

これはform.submit()ですh小文字 's'? – kinakuta

答えて

2

変更IDname送信ボタン。 から


追加メモ:
フォームとその子要素は、そのように提出し、長さ、またはメソッドなど、フォームの性質、との競合入力名やIDを使用しないでください。名前の競合は、混乱する障害を引き起こす可能性があります。 {に

$("form").on("submit", function(event){...}); 

または

$("form").submit(function(event){...}); 

:私はあなたがやろうとしている内容を正確に把握していないが、フォームを送信するために

+0

これは正しいです! form.submit()の場合と同様です。そして、うわー私はいつも名前として "提出"を使用します:(その悪い習慣を修正するための時間を設定してください! – Justin

3

どのブラウザでも動作するかどうかわかりません。方法はありません。Submit Javascriptは大文字小文字を区別します。代わりにsubmitを使用してください。

+0

あなたも正しいと思います! – Justin

0

は、あなたのような何かをしなければなりません。あなたが検証しなければならないものは何でも、成功した場合はajaxリクエストを行います:

$.ajax({...}); 
関連する問題