Strict Standards: Resource ID#37 used as offset, casting to integer (37) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#39 used as offset, casting to integer (39) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#40 used as offset, casting to integer (40) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401
ТвойWeb :: Версия для печати :: Как остановить submit формы?
ТвойWeb » WebMaster класс » JavaScript » Как остановить submit формы?

Страниц (3): [1] 2 3 »
 

1. Bolat - 25 Июня, 2005 - 08:20:50 - перейти к сообщению
Мне нужно чтобы при начале субмита была проведена проверка текста формы и если проверка выдала отрицательный результат субмит небыл произведен.

Я се так примерно это представляю:
CODE:

<html><head>
<script language="javascript">
function CheckForm(form)
{
if(form.text.value=='')
{
alert('Enter some text!');
// Код остановки субмита формы, которого я не знаю...
}
else
{form.submit()}
}
</script></head>

<body>
<form name="forma" action="SomeScript.html" method="post" onSubmit="CheckForm(this)">
<input name="text" type="text" size="20">
<input name="but" type="submit" value=" OK ">
</form>
</body></html>


Или как то это по другому делается?
2. Анна - 25 Июня, 2005 - 08:42:02 - перейти к сообщению
Bolat
Зай, я не очень поняла, что ты хочешь проверять.
3. TvoyWeb - 25 Июня, 2005 - 11:28:38 - перейти к сообщению
Bolat
Вместо
Bolat пишет:
// Код остановки субмита формы, которого я не знаю...

вставь retrn false;
4. Bolat - 26 Июня, 2005 - 04:03:32 - перейти к сообщению
TvoyWeb
Все равно форма субмитися - происодит выполнения файла 'SomeScript.html'.[b]TvoyWeb

Ваще проблема в том что я хотел бы чтобы субмит формы происходил токо через функцию Check().

CODE:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="javascript">
function Check(form)
{
if(document.forms[0].text.value==''){alert('Enter some text!')}
else{document.forms[0].submit();}
}
</script>
</head>
<body>
<form name="forma" action="SomeScript.html" method="post">
<input name="text" type="text" size="10">
<input name="but" type="button" value=" OK " onClick="Check()">
</form>
</body>
</html>


Если нажать кнопку OK то запускается функция Check - это нормально.
Но если навести фокус на текстовое поле и нажать 'Enter', то СРАЗУ же происходит субмит формы(функция Check() игнорируется, так как кнопка OK не была нажата) - это плохо! Как этого избежать?

5. Дмитрий Б. - 26 Июня, 2005 - 05:55:26 - перейти к сообщению
Тогда сделай вот так:
CODE:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="javascript">
function Check(form)
{
if (document.forms[0].text.value=='')
{
alert ('Enter some text!');
return false;
}
else return true;
}
</script>
</head>
<body>
<form name="forma" action="SomeScript.html" method="post" onsubmit="return Check();">
<input name="text" type="text" size="10">
<input name="but" type="button" value=" OK " onClick="Check()">
</form>
</body>
</html>

- и будет тебе счастье!
6. Bolat - 26 Июня, 2005 - 08:01:30 - перейти к сообщению
Дмитрий Б.
Спасибо.
7. Дмитрий Б. - 27 Июня, 2005 - 01:14:05 - перейти к сообщению
А, чёрт! У тебя же там обычный батон стоит! Тогда вот так:
CODE:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="javascript">
function Check(form)
{
if (document.forms[0].text.value=='')
{
alert ('Enter some text!');
return false;
}
else return true;
}
</script>
</head>
<body>
<form name="forma" action="SomeScript.html" method="post" onsubmit="return Check();">
<input name="text" type="text" size="10">
<input name="but" type="submit" value=" OK ">
</form>
</body>
</html>
8. FROZEN - 27 Июня, 2005 - 03:42:17 - перейти к сообщению
А вообще ребята, это делать нужно на php... Так как-то вроде легче... Ну, кому как! Подмигивание
9. ETC - 27 Июня, 2005 - 05:32:03 - перейти к сообщению
У меня всё проще:

CODE:

<form action="javascript:check(this)">


CODE:

function check(obj) {
.... // проверка всего и вся
obj.action = 'script.php';
obj.submit();
}
10. Дмитрий Б. - 28 Июня, 2005 - 22:02:26 - перейти к сообщению
>ETC
В MSIE это выдаёт ошибку, если стоит флажок "Работать автономно". Нехорошо...

Форум на AlfaSpace.NET


Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.041]     [ Gzipped ]



Notice: ob_end_flush(): failed to send buffer of ob_gzhandler (1) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/page_tail.php on line 33