Страница 1 из 1

JavaScript b и значения полей формы

Добавлено: 14 апр 2005, 21:26
ZaikinMaxim
Добрый день.
Вопрос такой. Есть html документ, там есть формочка авторизации пользователя и с низу кнопочка авторизации.
По нажатию кнопочки происходит следующее
<input name="Submit" type="submit" onClick="CheckEmpty(this)" value="Авторизироваться">

function CheckEmpty(f){
d =f.name.value;
g = f.pass.value;
if ( d == null ){
alert("Вы должны ввести имя пользователя.");

}
else {
if ( g ==null) {
alert("Вы должны ввести пароль.");
}
}
}

сама форма описанна так
<form name="authorize" method="post" action="login.php">
В связи с этим вопросы такие.
По нажатию на кнопку, выходит ошибка что свойство pass.value;
недостпно или равно Null. И второй вопрос даже если делать проверку по первому полю, в том случае когда оно пустое, все равно происходит передача данных login.php, как сделать так, что бы если поле пустое, выходила табличка, и все. То есть по нажатии на ok содержимое окна не меннялось?

Добавлено: 15 апр 2005, 15:51
Deady

Код: Выделить всё

<script language="JavaScript">
function CheckEmpty() {
	var Inp1 = document.getElementById("loginForm").text.value;
	var Inp2 = document.getElementById("loginForm").pass.value;
	if (Inp1!=null && Inp1.length>0 && Inp2!=null && Inp2.length>0 ) {
		document.getElementById("loginForm").action="login.php";
	} else {
		alert("Текст не может быть пустым");
	}
}
</script>

<form id='loginForm' action='' onSubmit='CheckEmpty()'>
<input id='text' type='text' name='text' />
<input id='pass' type='text' name='pass' />
<input type='submit' value='Авторизироваться' />
</form>

Добавлено: 15 апр 2005, 20:00
Oscar
Нужно во всех броузерах начальной страницей поставить большую надпись: Javascript - это НЕ Java.
И не давать возможность менять её, пока пользователь этого не поймёт :-)

сорри за оффтопик

Добавлено: 16 апр 2005, 00:07
Deady
просто прав не было перекинуть тему в другой топик

Добавлено: 19 апр 2005, 20:34
dykzei
можно еще сделать отмену отсылки так, помоему:

Код: Выделить всё

function CheckEmpty(f){ 
d =f.name.value; 
g = f.pass.value; 
if ( d == null ){ 
alert("Вы должны ввести имя пользователя."); 
return false;
} 
else { 
if ( g ==null) { 
alert("Вы должны ввести пароль."); 
return false;
} 
return true;
} 
}
а в обработчике так:

Код: Выделить всё

<input name="Submit" type="submit" onClick="return CheckEmpty(this);" value="Авторизироваться">
если будет return false, то отсылка не произойдет.