在 .NET 中回发后从后面的代码中获取 HTML5 输入类型搜索的值
Get value of HTML5 input type search from code behind after postback in .NET
我正在我的网页中创建一个用于搜索的示例文本框(我正在使用 VB):
Dim txtSearchFilter As New HtmlGenericControl("input")
With txtSearchFilter
.ID = "txtSearchFilter"
.Attributes.Add("placeholder","Filter")
.Attributes.Add("type","search")
.Attributes.Add("maxlength","80")
End With
很棒,因为这是 HTML5 样式的框,它具有一些有用的功能,例如框右侧的 "x" 用于清除文本输入。但是,从后面的代码中,我无法检索输入的文本。我试过:
txtSearchFilter.InnerText
txtSearchFilter.InnerHtml
txtSearchFilter.Attributes("value")
Request.Form("txtSearchFilter")
但是 none 这些工作。有没有办法获取值?
P.S., 所以阻止我选择 HTML5 标签,而是放入 HTML 标签,即使我选择了 HTML5 标签。
向输入元素添加 name 属性。
txtSearchFilter.Attributes.Add("name", "txtSearchFilter")
然后在回发时,您可以通过 Request.Form(name_attribute)
检索值。基于以上代码的示例:
Dim value as String = Request.Form("txtSearchFilter")
我正在我的网页中创建一个用于搜索的示例文本框(我正在使用 VB):
Dim txtSearchFilter As New HtmlGenericControl("input")
With txtSearchFilter
.ID = "txtSearchFilter"
.Attributes.Add("placeholder","Filter")
.Attributes.Add("type","search")
.Attributes.Add("maxlength","80")
End With
很棒,因为这是 HTML5 样式的框,它具有一些有用的功能,例如框右侧的 "x" 用于清除文本输入。但是,从后面的代码中,我无法检索输入的文本。我试过:
txtSearchFilter.InnerText
txtSearchFilter.InnerHtml
txtSearchFilter.Attributes("value")
Request.Form("txtSearchFilter")
但是 none 这些工作。有没有办法获取值?
P.S., 所以阻止我选择 HTML5 标签,而是放入 HTML 标签,即使我选择了 HTML5 标签。
向输入元素添加 name 属性。
txtSearchFilter.Attributes.Add("name", "txtSearchFilter")
然后在回发时,您可以通过 Request.Form(name_attribute)
检索值。基于以上代码的示例:
Dim value as String = Request.Form("txtSearchFilter")