尝试查找TextBox中包含的值时出现奇怪的ASP.NET问题

Dot*_*NET 0 html javascript c# asp.net jquery

我有一个包含许多asp:TextBoxes的表单.用户可以在这些文本框中编辑文本,当按下"保存"按钮时,这些新值将写入数据库.

我总共有3个文本框,前两个文本框的新值传递给后面的代码没有任何问题.但是,第3个文本框的旧内容将传递到服务器,而不是用户编辑的数据.

有问题的文本框的标记如下所示:

   <asp:TextBox ID="descriptionBox" ReadOnly="true" style" runat="server" TextMode="MultiLine" Text='<%# Eval("Description") %>'></asp:TextBox>
Run Code Online (Sandbox Code Playgroud)

以下是C#代码,它尝试在用户编辑后获取文本框的内容.请注意,这些文本框放在Repeater中:

string description = ((TextBox)e.Item.FindControl("descriptionBox")).Text;
Run Code Online (Sandbox Code Playgroud)

谁能提出问题可能是什么?其他文本框使用相同的标记和代码,它们工作得很好.

Sir*_*lot 5

请参阅MSDN文档 - 它是导致此问题的ReadOnly属性:

将ReadOnly属性设置为true的TextBox控件的Text值在发生回发时发送到服务器,但服务器不对只读文本框进行处理.

另一种方法是在客户端进行:

descriptionBox.Attributes["readonly"] = "readonly"