Как получить доступ к данным из HTML-элементов управления в asp.net - PullRequest
1 голос
/ 18 апреля 2009

Как получить доступ к данным из html в asp.net в файле .cs (с кодом)?

На странице .aspx у меня есть:

             <tr>
                <td>Username:</td><td><input id="username" type="text" /></td>
             </tr>
             <tr>
                <td>Password:</td><td><input id="password" type="password" /></td>
             </tr>
             <tr>

Я знаю, что могу преобразовать это во что-то вроде:

    <tr>
        <td>Username:</td><td><asp:TextBox ID="username" TextMode="SingleLine" runat="server"></asp:TextBox></td>
     </tr>
     <tr>
        <td>Password:</td><td><asp:TextBox ID="password" TextMode="Password" runat=server></asp:TextBox></td>
     </tr>

Это позволит мне получить доступ к элементам управления через идентификаторы. Однако мне было интересно, существует ли способ доступа к данным без использования серверных элементов управления asp.net.

Ответы [ 4 ]

10 голосов
/ 18 апреля 2009

Дайте входам имя и идентификатор, и вы сможете получить значения из Request.Form . Входы без имен не отправляются обратно с формой post.

<input id="username" name="username" type="text" />
<input id="password" name="password" type="password" />


var username = Request.Form["username"];
var password = Request.Form["password"];
2 голосов
/ 18 апреля 2009

Добавьте runat="server" к элементам управления, и затем вы сможете получить к ним доступ из кода, почти как если бы они были <asp:______ /> элементами управления.

0 голосов
/ 07 января 2010

Это ваш код:

<tr>
    <td>Username:</td>
    <td><input id="username" type="text" /></td>
</tr>
<tr>
    <td>Password:</td>
    <td><input id="password" type="password" /></td>
</tr>

Вы можете просто добавить атрибут runat="server" к элементам управления Html:

<tr>
    <td>Username:</td>
    <td><input id="username" runat="server" type="text" />  <!--NOTE THE RUNAT="SERVER"--></td>
</tr>
<tr>
    <td>Password:</td>
    <td><input id="password" **runat="server"** type="password" /></td>
</tr>

Теперь вы можете получить доступ к элементам управления в asp.net.

0 голосов
/ 19 апреля 2009

Элементы управления ASP.NET, по сути, обернуты в HTML-элементы управления, поэтому asp:Button будет отображаться как input элемент HTML Некоторые веб-разработчики предпочитают использовать элементы управления HTML из-за меньшего размера. Поэтому каждый элемент управления HTML будет отображаться на элемент управления asp-сервера. Как и в предыдущем ответе от Джоэла, добавьте runat="server", тогда на элемент управления можно ссылаться по идентификатору из кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...