Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.02.2009, 22:02   #1
Alexei_1986
Пользователь
 
Регистрация: 30.01.2009
Сообщений: 11
По умолчанию Как задать действие формы HTML-страницы? C#

Здравствуйте!

Имеется HTML-страница с формой <form>. Действие, которое должно выполняться при нажатии на Submit, описано в C#-программе. Что в таком случае нужно указывать в атрибуте action формы?
Alexei_1986 вне форума Ответить с цитированием
Старый 14.02.2009, 22:37   #2
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,551
По умолчанию

Цитата:
Что в таком случае нужно указывать в атрибуте action формы?
Путь к обработчику формы.
Arigato вне форума Ответить с цитированием
Старый 14.02.2009, 23:36   #3
Alexei_1986
Пользователь
 
Регистрация: 30.01.2009
Сообщений: 11
По умолчанию

Вопрос, собственно, и заключается в том, что является этим самым обработчиком формы - нужно указывать имя C#-файла, пространство имён или саму функцию?
Alexei_1986 вне форума Ответить с цитированием
Старый 15.02.2009, 00:24   #4
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,551
По умолчанию

Цитата:
нужно указывать имя C#-файла
Да, указывается путь на скрипт, который будет принимать данные формы.
Arigato вне форума Ответить с цитированием
Старый 15.02.2009, 21:43   #5
Alexei_1986
Пользователь
 
Регистрация: 30.01.2009
Сообщений: 11
По умолчанию

Теперь такая проблема:

Есть HTML-страница

Код:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Заголовок</title>
</head>
<body>
    <form id="form1" runat="server" method="post" action="Default.aspx.cs">
        <textarea name="CSharpCode" cols="80" rows="25"></textarea>
        <br /><br />
        <input type="text" name="fio" />
        <input type="submit" name="Submit" value="Форматировать код" />
    </form>
</body>
</html>
Есть файл Default.aspx.cs следующего содержания:

Код:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class _Default : System.Web.UI.Page 
{
    protected void Page_Load(object sender, EventArgs e)
    {
        form1.InnerText = "1";
    }
}
При запуске сразу выполняются действия, описанные в Page_Load. А как сделать, чтобы они выполнялись только при нажатии на кнопку Submit?
Alexei_1986 вне форума Ответить с цитированием
Старый 15.02.2009, 21:51   #6
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,551
По умолчанию

Нужно проверить, что были переданы какие-либо данные POST, и только в этом случае выполнять нужные действия.
Как это сделать на C#, к сожалению, подсказать не могу.

Код:
form1.InnerText = "1";
Я вот не пойму, от куда у Вас form1? form1 - это ID формы, который на сервер не передаётся.
Arigato вне форума Ответить с цитированием
Старый 16.02.2009, 22:04   #7
Alexei_1986
Пользователь
 
Регистрация: 30.01.2009
Сообщений: 11
По умолчанию

Теперь такая ситуация:

Форма

Код:
<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Заголовок</title>
<script runat="server" type="text/C#">
// <!CDATA[

void Submit_onclick() {
    Label1.Text="1";
}

// ]]>
</script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <textarea id="CSharpCode" cols="80" rows="25"></textarea>&nbsp;<br />
        <br />
        <input id="Submit" type="submit" value="Submit" onclick="Submit_onclick()" />&nbsp;<br />
        <br />
        <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label></div>
    </form>
</body>
</html>
При нажатии на "Submit" ничего не происходит. Как исправить?

Последний раз редактировалось Alexei_1986; 17.02.2009 в 15:33.
Alexei_1986 вне форума Ответить с цитированием
Старый 27.05.2009, 20:34   #8
SkyM@n
Laravel/Vue expert
Старожил Подтвердите свой е-майл
 
Аватар для SkyM@n
 
Регистрация: 08.08.2007
Сообщений: 2,832
По умолчанию

bump //модератор
SkyM@n вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Код(скрипт) чтения HTML страницы как текста PuzzleC JavaScript, Ajax 3 06.03.2010 15:35
Как сохранять HTML страницы в БД? tsergey Помощь студентам 5 03.04.2009 16:05
Как вставить html во все страницы проекта? Oliany HTML и CSS 8 26.05.2008 14:12
Как задать прозрачность формы dimfil Общие вопросы Delphi 2 09.11.2007 09:53