我在ASPX页面中有这个:
<input id="MY_LAST_FOCUS" name="MY_LAST_FOCUS" type="text" runat="server" />
在我的VB.NET代码的Form Load中,我有这个:
Dim s as String = Request("MY_LAST_FOCUS")
为什么即使MY_LAST_FOCUS HTML文本框中包含文字,s也总是为空?
答案 0 :(得分:5)
你为什么不用:
<asp:Textbox ID="MY_LAST_FOCUS" runat="server">
然后在您的code_behind中,您可以访问:
Dim s as String = MY_LAST_FOCUS.Text
答案 1 :(得分:2)
Dim s as String = Request.Form(MY_LAST_FOCUS)
这适合我。
我同意@Jack Marchetti。
答案 2 :(得分:1)
如果要直接从请求中访问,请使用控件的UniqueID:
Request.Form[MY_LAST_FOCUS.UniqueID]
答案 3 :(得分:0)
我同意杰克的意见,但如果你想保留一个普通的HTML输入框,你可以得到它的价值:
Dim s As String = MY_LAST_FOCUS.Value
这只有在你保持runat="server"
的情况下才有效。就像杰克指出的那样,你可能应该只使用ASP.NET TextBox
控件。
答案 4 :(得分:0)
它是空的,因为你似乎从Request对象中获取了一个名为你的输入的内容,而不是抓取输入本身的内容。