我有一個只讀的文本框,它有一個必需的驗證程序附加到它。此文本框只能使用其他控件進行填充。Asp.Net驗證器和只讀文本框
問題是,只讀文本框不會存儲它們的值並在回發時將其恢復,所以這會導致驗證器在每次回發後都會出現問題。我知道有辦法強制它存儲價值,但我實際上不希望它存儲它。
反正有過去嗎?
編輯:這是產生這些問題的控制:
<li class="fakeUploadLi">
<asp:Label CssClass="lbl" ID="lb" runat="server" Text="Image:"></asp:Label>
<div class="fakeupload">
<asp:TextBox runat="server" ID="tbFakeupload" Enabled="false" />
</div>
<asp:FileUpload ID="fuImage" runat="server" CssClass="fileUpload" onchange="this.form.ctl00$cphAdmin$tbFakeupload.value = this.value;" />
<asp:RequiredFieldValidator ValidationGroup="newImage" runat="server" ControlToValidate="tbFakeupload"
ErrorMessage="Please select an image first.">*</asp:RequiredFieldValidator>
</li>
它是在原來的文件上傳HTML控件覆蓋。請注意,如果我關閉只讀(或啓用,嘗試兩種)問題消失。
你爲什麼不嘗試tbFakeupload'的'值存儲在隱藏'和field'在'PostBack'後恢復它永遠不會失去它的價值,驗證器不會觸發 –