3

我有一个像这样的 asp,net 文本框

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

当我试图在后面的代码中将其值获取到日期变量 LastService 时,我收到此错误

从字符串“”到类型“日期”的转换无效。

异常详细信息:System.InvalidCastException:从字符串“”到类型“日期”的转换无效。源错误:第 26 行:oItem.LastService = txtLastService.Text 源文件:.\admin\vehicle\add.aspx.vb 行:26

我在其他页面中使用了相同的代码,它工作正常,除了这个页面有任何帮助

编辑

请注意,当我单击表单上的提交时,文本框的值不为空。而且当我删除只读属性时,我没有得到错误。但我需要这个文本框是只读的,因为我使用 javascript 来选择日期并设置它的值

4

4 回答 4

1

这个错误对我来说似乎非常不言自明。字符串是“”,您正在尝试将其转换为日期。那么,如何将空字符串转换为日期呢?那会是什么日子?

于 2012-04-17T02:47:36.187 回答
1

而不是Readonly="true",尝试使用Enabled="false"

于 2012-04-17T03:56:06.237 回答
0

为什么不使用 aHiddenField代替?

<asp:hiddenfield id="txtLastService" runat="server"/>
于 2012-04-17T03:19:28.700 回答
0

尝试使用 Request.Form[txtLastService.UniqueID] 如果 C# 和 Request.Form(txtLastService.UniqueID) 如果 vb.net

于 2012-04-17T12:49:51.803 回答