2011-07-02 7 views
2

私のコードのエラーはsubmit.Withの後に空白のページでfalseを返します。Javascriptの返り値falseが動作しない

function send_serial(){ 
    //Check date 
    var date=document.getElementById('date_field').value; 
    if(date==''||date==null){ 
    alert('Please select the date.'); 
     return false; 
    } 

} 
+2

あなたのコードにサブミット関連が全く表示されません。フォーム提出はここでどのように機能しますか? – Gareth

+0

@Gareth これは私のページのフォームタグです。 form action = "JAVASCRIPT:send_serial();"> – Learner

+1

また、この関数はどのように実行されますか?あなたはそれが偽に戻っていないことをどのように知っていますか?しかし、ブラウザはそれを無視していますか? – Alxandr

答えて

8

あなたのformタグが

<form onsubmit="return send_serial();"> 

ない

<form action="JAVASCRIPT:send_serial();"> 

あなたがアクションとしてJAVASCRIPT:send_serialを使用

する必要があり、あなたはその内容が供給されているページを再送信するためのフォームを求めています send_serial関数の結果によって。

onsubmitイベントハンドラはJavaScriptであり、URLではないため、先頭にJAVASCRIPT:は必要ありません。イベントハンドラの結果がfalseの場合は、フォームの送信をキャンセルします。しかし、onsubmit="send_serial()"と言うことはできません。なぜなら、アクションハンドラの結果は何もないからです。アクションハンドラは、基本的にfunction (event) { ... }にプラグインされている関数本体であるため、をonsubmit属性に含める必要があります。

関連する問題