2012-04-17 24 views
3

值我有一個asp,淨文本框這樣不能得到一個只讀文本框在asp.net

<asp:TextBox readonly="true" ID="txtLastService" runat="server"></asp:TextBox> 

當我試圖把它的價值得到代碼日期變量LastService背後,我得到這個錯誤

Conversion from string "" to type 'Date' is not valid.

Exception Details: System.InvalidCastException: Conversion from string "" to type 'Date' is not valid. Source Error: Line 26: oItem.LastService = txtLastService.Text Source File: .\admin\vehicle\add.aspx.vb Line: 26

我已經使用在其他頁面相同的代碼,並能正常工作,除了此頁面 任何幫助

編輯

請注意,當我單擊窗體上的提交時,文本框的值不爲空。而且當我刪除只讀屬性時,我不會得到錯誤。但我需要這個文本框是隻讀的,因爲我正在使用javascript來選擇日期並設置它的值

回答

1

代替Readonly="true",嘗試使用Enabled="false"

+0

我試過這個,但它沒有被禁用 – Smith 2012-04-17 06:25:31

1

這個錯誤似乎對我來說是非常不言自明的。該字符串是「」,您正試圖將其轉換爲日期。那麼如何將空字符串轉換爲日期?那會是幾號?

+0

的值該文本框不是空的 – Smith 2012-04-17 02:50:29

+0

這是根據你提供的細節。在調試器中設置斷點。什麼是確切的價值?你在哪裏閱讀代碼中的值?如果您想解決問題,請定義問題。 – 2012-04-17 02:51:28

+0

在瀏覽器中填充文本框的值是日期字符串mm/dd/yyyy。但我沒有在服務器中獲得這個值。我正在從後面的代碼中讀取服務器中的值。我想獲得服務器中文本框的值 – Smith 2012-04-17 02:53:11

0

爲什麼不使用HiddenField代替?

<asp:hiddenfield id="txtLastService" runat="server"/> 
+0

該文本框必須是可見的,因爲我沉思java腳本設置值是一個日期 – Smith 2012-04-17 06:25:05

0

嘗試使用的Request.Form [txtLastService.UniqueID]如果C#和 的Request.Form(txtLastService.UniqueID)如果vb.net