0

簡単に言うと、onsubmit を正しく使用する方法を理解しようとしています。testresults 関数は onclick で正常に動作しますが、送信時にアクティブにすることはできません (ボタンを押すか、Enter キーを押します)。ここで何か不足していますか?最終的には、onsubmit でチェックを実行し、onclick と同じ種類の境界線の変更/アラートを表示するだけです。これは不可能ですか?

function testResults(form) {
    var TestVar = form.firstname.value;
    if (TestVar.length > 0) {
        alert("You typed: " + TestVar);
        document.getElementById('firstname').style.border = ''
    } else {
        alert("You didn't typed!" + TestVar);
        document.getElementById('firstname').style.border = '1px solid red';
        return false;
    }
    return true;
}

HTML

<html>    
<head>
    <link rel="stylesheet" type="text/css" href="note.css">
    <script type="text/javascript" src="formJS2.js"></script>
</head>
<body>
    <form NAME="myform" ACTION="" METHOD="GET" onSubmit="testResults();"> <span>First name:</span> 
        <input type="text" name="firstname" id="firstname" value="" />
        <br>
        <input type="submit" value="Submit">
        <input type="button" name="button" value="Click" onClick="testResults(this.form)">
    </form>
</body>
</html>
4

4 に答える 4

0

これを使用することもできます

    <input type="button" name="button" value="Click" onClick="return testResults(this.form)">

関数の前に return を置き、それに応じて true または false を返すだけです。

于 2013-04-04T15:28:39.880 に答える