powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Проверка формы и переход дальше
10 сообщений из 10, страница 1 из 1
Проверка формы и переход дальше
    #32742015
podeig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Такая задачка:
Необходимо по нажатию кнопки <asp:button....> проверить на JavaScript что форма заполнена нужным образом. Если заполнена плохо, то показывать alert, и НЕ обновлять страницу совсем, если все окей то из кода behind идти на след. страницу. У меня страница обновляется при любом раскладе. :(

Заранее спасибо за идеи :)
...
Рейтинг: 0 / 0
Проверка формы и переход дальше
    #32742075
kxmep
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
<%@ Page language="c#" Codebehind="WebForm2.aspx.cs" AutoEventWireup="false" Inherits="test.WebForm2" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<html>
	<head>
		<title>WebForm2</title>
		<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
		<meta name="CODE_LANGUAGE" Content="C#">
		<meta name="vs_defaultClientScript" content="JavaScript">
		<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
	</head>
	<body>
		<form id="Form1" method="post" runat="server" onsubmit="return verify();">
			<p>
				<asp:textbox id="TextBox1" runat="server"></asp:textbox></p>
			<p>
				<asp:textbox id="TextBox2" runat="server">Введите слово: yes</asp:textbox></p>
			<p>
				<asp:button id="Button1" runat="server" Text="Button"></asp:button></p>
		</form>
		<script language="javascript">

function verify()
{
	var tb;
	var result = true;
	
	//берем первый текстбокс
	tb = document.getElementById("TextBox1");
	//проверим его значение на длину
	if (('' + tb.value).length <  1 )
	{
		tb.style.backgroundColor = "#FFE4E1"; 
		result = result && false;
	}
	else
	{
		tb.style.backgroundColor = ""; 
		result = result && true;
	}
	
	//берем второй текстбокс
	tb = document.getElementById("TextBox2");
	//проверим его значение на слово yes
	if (('' + tb.value).length >  0 )
	{
		if (tb.value.toUpperCase() != 'YES')
		{
			tb.value = "Введите слово: yes";
			tb.style.color = "#FF0000"; 
			tb.style.backgroundColor = "#FFE4E1"; 
			result = result && false;
		}
		else
		{
			tb.style.backgroundColor = ""; 
			result = result && true;
		}
	}
	else
	{
		tb.style.backgroundColor = "#FFE4E1"; 
		result = result && false;
	}
	
	return(result);
}
		</script>
	</body>
</html>

Обаращаю внимание на:
<form id="Form1" method="post" runat="server" onsubmit="return verify(); ">

Код: plaintext
kxmep
...
Рейтинг: 0 / 0
Проверка формы и переход дальше
    #32742089
kxmep
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И вот еще...

Делать проверку не клиенте не есть правильно!
Ибо более продвинутый пользователь сможет ее обойти :(

Код: plaintext
kxmep
...
Рейтинг: 0 / 0
Проверка формы и переход дальше
    #32742364
podeig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо! Все получилось!

Такая проверка здесь прокатит. Во первых поля все hidden, а во вторых в принципе это не в пользу юзера извращаться и обходить проверки.

Пришлось правда немного усложнить пример, так как у меня 2 кнопки сабмита, на одну проверка нужна, на другую нет.

btnNextStep.Attributes.Add("onclick", "SetDirection('forward')");
btnPreviousStep.Attributes.Add("onclick", "SetDirection('back')");

Определяю направление, и если forward, то проверяем.

:)
...
Рейтинг: 0 / 0
Проверка формы и переход дальше
    #32742429
Фотография hDrummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А чего валидаторами не воспользовались?

---
Алгоритм
...
Рейтинг: 0 / 0
Проверка формы и переход дальше
    #32742456
podeig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я с валидатором еще не очень знаком, но как я понял он обрабатывается на сервере, а мне надо былo на машине и вывести окошко alert.
:)
...
Рейтинг: 0 / 0
Проверка формы и переход дальше
    #32742486
Ustazz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Валидаторы могут обрабатываться и на клиенте: EnableClientScript="True". Также можно назначить функцию для проверки самостоятельно. Валидаторы могу показывать какое-то сообщение в самой странице рядом с местом ошибки, что IMHO гораздо удобней неожиданно выскакивающих посреди экрана окошек alert. Выбор способа валидации, конечно зависит от вашего опыта и решаемой задачи.
...
Рейтинг: 0 / 0
Проверка формы и переход дальше
    #32742669
Фотография hDrummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UstazzВалидаторы могут обрабатываться и на клиенте: EnableClientScript="True".

Вот-вот.


Компоненты контроля ввода ASP .Net 1 часть

Компоненты контроля ввода ASP .Net 2 часть

Старая статья, но для начала потянет.
...
Рейтинг: 0 / 0
Проверка формы и переход дальше
    #32742874
Фотография profil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
podeig...Пришлось правда немного усложнить пример, так как у меня 2 кнопки сабмита, на одну проверка нужна, на другую нет....с валидаторами это не получится
/topic/60888
...
Рейтинг: 0 / 0
Проверка формы и переход дальше
    #32742908
Фотография profil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kxmep...Делать проверку не клиенте не есть правильно!
Ибо более продвинутый пользователь сможет ее обойти...странное заявление
на клиенте проверки всегда делаются только в угоду клиента - для повышения юзабильностиа, но критическую проверку конечно надо делать на сервере
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Проверка формы и переход дальше
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]