我在Grid View的每一行中都有一個日期文本框。由於不允許用戶在文本框中輸入自己的值,因此我們將該屬性設置爲ReadOnly =「true」。並提供了一個設置文本框值的日曆java腳本插件。現在,當我嘗試在保存點擊時訪問日期文本框時,文本框值不會被保留。通過客戶端腳本更改服務器端訪問Readonly文本框的變通辦法
我也知道這個問題和解決方案。我們需要在服務器端設置readonly屬性來解決這個問題。但我最關心的是,我已將文本框放在網格視圖的模板字段中。所以我需要遍歷Grid view的每一行,然後獲取日期文本框的引用,然後將readonly屬性設置爲只讀。看起來非常麻煩。任何人都可以提出其他選擇或解決辦法。
代碼如下
<asp:GridView ID="gv_sample" runat="server" AutoGenerateColumns="false">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td>
<asp:TextBox runat="server" ID="txtByWhen" ReadOnly="true" CssClass="inputbox" Text='<%#Eval("ByWhen") %>'></asp:TextBox>
</td>
<td style="padding-left: 2px;">
<img src="../Images/dateico.gif" alt="Select a date" title="Select a date"
onclick="JavaScript:return showCalendar('<%#((GridViewRow)Container).FindControl("txtByWhen").ClientID %>','dd/mm/y');" />
</td>
</tr>
</table>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
+1好好的。任何其他的工作? – suryakiran