2

onSubmitに問題があります。私はjQTouchとを使用して小さなモバイルウェブサイトを構築しています。ユーザーがEnterキーを押した場合、onSubmitを使用して関数を呼び出したいのですが、それは機能しません。onclickで呼び出されたときに関数が完全に機能するため、何が問題なのか本当にわかりません。

これがHTMLです。

<form action="" method="get" name="form1" onSubmit="calculateValue1();return false">
        <ul>
        <li>
        Input 1 <input id="input1" name="input1" type="number"/> 
        </li>                     
        <li>
        Input 2 <input id="input2" name="input2" type="number"/>
        </li>  
        </ul>
</form>   

<a  onclick="calculateValue1()">Calculate</a>

そして、これが関数calculateValue1()のJavaScriptです:

function calculateValue1() {    
    M = window.form1.input1.value;
    n = window.form1.input2.value;

    if (window.form1.input1.value=="") {
    alert("Value missing");
    }
}

onclickでリンクをクリックすると、機能が動作します。入力フィールド1にフォーカスがあり、Enterキーを押すと、何も起こりません。

これの問題は何でしょうか?Enterキーを押してもエラーメッセージは表示されません。onSubmitの何が問題なのか本当にわかりません。

4

2 に答える 2

2

フォームに送信ボタンがありません。

<form onsubmit = "alert('here'); return false;" name = "form1" method = "get">
        <ul>
        <li>
        入力1  
        </ li>                     
        <li>
        入力2
        </ li>  
        </ ul>
<input type = "submit" value = "submit" style = "display:none" />
</ form>   
于 2011-03-06T20:21:28.280 に答える
0

onSubmitイベントは、「submit」タイプの入力を押してフォームを送信するか、入力フィールドでEnterキーを押すとトリガーされますが、Enterキーを押してフォームを送信するには、適切なものが必要です。送信ボタン。その場合、送信にアンカーリンクは必要ありません。

<form action="" method="get" name="form1" onSubmit="calculateValue1();return false">
    <ul>
    <li>
    Input 1 <input id="input1" name="input1" type="number"/> 
    </li>                     
    <li>
    Input 2 <input id="input2" name="input2" type="number"/>
    </li>  
    </ul>
    <input type="submit" value="Calculate"></input>
</form>
于 2011-03-06T20:23:28.470 に答える