页面加载时我有一个空的文本框,使用jquery我将文本添加到该文本框中。
现在我想在发生按钮单击功能时在服务器端检索文本
代码
<asp:TextBox ID="txtPaths" runat="server" Width="550px" Height="19px" CssClass="txtPathClass" Enabled="False" Text=""></asp:TextBox>
jQuery
$('#ContentPlaceHolder1_txtPaths').val("Testing");
服务器代码
protected void btnUpload_Click1(object sender, EventArgs e)
{
string txtPathss = txtPaths.Text;
Debug.writeline("txtPathss = "+txtPaths.Text);
}
注意
问题是我无法获得
txtPaths.text
值
它像打印一样
txtPathss =
答案 0 :(得分:1)
类似Enabled="False"
的声音可防止在表单提交期间插入文本框值,因为它向文本框添加了disabled="disabled"
属性(请参见下面的参考资料)。您应该通过更改以下一项来使用ReadOnly="True"
设置:
<asp:TextBox ID="txtPaths" runat="server" Width="550px" Height="19px" CssClass="txtPathClass" Enabled="false" Text=""></asp:TextBox>
对此:
<asp:TextBox ID="txtPaths" runat="server" Width="550px" Height="19px" CssClass="txtPathClass" AutoPostBack="true" ReadOnly="true" Text=""></asp:TextBox>
使用readonly
属性,客户端用户无法编辑输入,但是在表单提交期间其值仍然可用。
注意:
除了设置ReadOnly
以防止用户输入之外,您还应该通过设置AutoPostBack="true"
启用回发。
参考文献: