0

最初,我有一个带有属性 readonly = true 的文本框。当我使用 asyncFileUpload OnClientUploadCompleted 时,我成功地删除了我的 asp 文本框(客户端)上的只读属性。但是,当我尝试从服务器端的文本框中检索值时,它返回一个空字符串或 null,即使它有一个值。这是客户端脚本

<script type="text/javascript" language="javascript">

    function OnClientUploadCompleteFn(){document.getElementById('ctl00_ContentPlaceHolder1_txtSponsorFileDesc').removeAttribute('ReadOnly');
    }
</script>

<asp:TextBox ID="txtSponsorFileDesc" runat="server" MaxLength="100" TextMode="MultiLine" Height="70px"  style="resize:none;"></asp:TextBox>

这是一个错误还是我做错了?

4

1 回答 1

2

我的猜测是 ASP.NET 没有任何价值,因为就它而言(在服务器端)它仍然是只读的。我建议不要对 ASP.NET 中的 ReadOnly 属性做任何事情,并将其完全保留在客户端上。当页面准备好时,使用 JQuery 将其设置为只读。

$(document).ready(function() {
    $("#textBox").attr('readonly','readonly');
});

然后在适当的时候在客户端激活它:

$("#textBox").removeAttr('readonly');
于 2013-03-14T03:54:22.287 回答