我在gridview中有一个隐藏字段,值绑定到gridview。
让我们假设隐藏字段的值为1。
当我尝试从后面的代码中检索数据时,隐藏字段的值更改为" 1,1"。
答案 0 :(得分:3)
由于某种原因,您使用相同的ID /名称对许多元素进行回发,那么您获取该ID /名称的服务器端的值是来自重复元素的值的逗号分隔列表。
例如,您发布了3个隐藏的输入元素,名称相同
<input type="hidden" name="par" value="1">
<input type="hidden" name="par" value="1">
<input type="hidden" name="par" value="1">
你在par="1,1,1"
答案 1 :(得分:0)
使用asp.net HiddeField控件,这样您就可以确保每个隐藏字段都有唯一的客户端ID。
<ItemTemplate>
<asp:Literal ID="MyLiteral" runat="server" Text='<%# Bind("VisibleValue") %>'/>
<asp:HiddenField ID="MyHiddenField" runat="server" Value='<%# Bind("HiddenValue")%>' />
</ItemTemplate>
在后面的代码中,您可以使用以下内容访问hiddenfield值:
For Each gvRow As GridViewRow In GridView.Rows
Dim Value as string= CType(gvRow.FindControl("MyHiddenField"), HiddenField).Value
Next