我试图返回一些输入到我网站上的textbox元素中的文本。输入一些文本后,我注意到它没有返回数据:

document.getElementById('myTextBox').text;


但是这样做:

document.getElementById('myTextBox').value;


编辑:上面的javascript用于客户端来测试正在读取的内容,使用.text返回一个空字符串,当传递回服务器时,确实显示了一个空字符串。 .value包含我输入的数据,但是当我尝试使用.value服务器端时,发生了错误。

但是,当我尝试添加以下内容时,在我的.cs类中:

string myInput = myTextBox.Value;


我收到一条错误消息,说


  “ System.Web.UI.WebControls.TextBox不包含针对
  '值'...”。


我引用的示例来自此处:http://www.aspsnippets.com/Articles/Get-value-of-HTML-Input-TextBox-in-ASPNet-code-behind-using-C-and-VBNet.aspx

我的文本框的声明如下:

<asp:TextBox ID="myTextBox" runat="server"></asp:TextBox>


但是,当我尝试将TextBox元素更改为Input元素时,出现错误消息:“类型或名称空间名称'Input'不存在...”

如何将输入到TextBox中的数据传递回服务器?

最佳答案

在本教程中,您指的是他们演示了如何在服务器端访问html输入文本框值。您正在混合html控件和asp.net服务器控件。

这代表一个ASP.NET服务器控件:

<asp:TextBox ID="myTextBox" runat="server"></asp:TextBox>


您可以像下面这样在服务器端(.cs文件)访问其值:-

string vaue = myTextBox.Text;


另一方面,可以通过添加html input属性将runat="server"转换为服务器控件,如下所示:

<input type="text" id="txtName" name="Name" value="" />


在这种情况下,它是HtmlInputText,您需要像这样访问它的值:-

string value = txtName.Value;

关于javascript - 使用ASP.NET无法获得输入值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34309760/

10-12 01:26
查看更多