我无法访问请求表单变量。下面给出了我的aspx代码的片段。
<form id="mainmasterform" runat="server">
<table align="center">
<tr>
<td><label for="ownfname">First Name</label></td>
<td><asp:TextBox id="ownfname" runat="server" TextMode="SingleLine"/></td>
</tr>
<tr>
<td><label for="ownlname">Last Name</label></td>
<td><asp:TextBox id="ownlname" runat="server" TextMode="SingleLine"/></td>
</tr>
<tr>
<td colspan="2">
<asp:Button ID="submitowner" runat="server" Text="Submit" onclick="modifyDetails" />
</td>
</tr>
</form>
现在onclick of button调用服务器方法“modifyDetails”,它尝试使用Request.Form对象访问表单变量。
protected void modifyDetails(object sender, EventArgs e) {
string fname = Request.Form["ownfname"];
string lname = Request.Form["ownlname"];
}
它不起作用,字符串fname和lname始终为null。 请帮忙,因为我无法理解这里的错误。
答案 0 :(得分:2)
为什么不执行以下操作?
protected void modifyDetails(object sender, EventArgs e) {
string fname = ownfname.Text;
string lname = ownlname.Text;
}
这就是ASP.NET的工作方式。
答案 1 :(得分:1)
要么不使用<asp:
控件(而是使用常规HTML控件),要么将其ClientIDMode
属性设置为static。 Documentation here
答案 2 :(得分:0)
试试这个
string fname = ownfname.Text
string lname = ownlname.Text