Короче говоря, я пытаюсь понять, как правильно использовать 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>
onsubmit="return testResults(this);"
— обратите внимание наreturn
. Это предотвратит отправку, если функцияtestResults
вернетfalse
- person Ian   schedule 04.04.2013