我有一个像这样的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
我在其他页面中使用了相同的代码,除了此页面外,它工作正常 任何帮助
修改
请注意,当我单击表单上的提交时,文本框的值不为空。而且当我删除readonly属性时,我不会得到错误。但是我需要这个文本框是只读的,因为我使用javascript来选择日期并设置其值
答案 0 :(得分:1)
这个错误对我来说似乎非常不言自明。字符串是“”,您正在尝试将其转换为日期。那么如何将空字符串转换为日期呢?这会是几号?
答案 1 :(得分:1)
而不是Readonly="true"
,请尝试使用Enabled="false"
答案 2 :(得分:0)
为什么不使用HiddenField
?
<asp:hiddenfield id="txtLastService" runat="server"/>
答案 3 :(得分:0)
如果是C#和,请尝试使用Request.Form [txtLastService.UniqueID] Request.Form(txtLastService.UniqueID)if vb.net