2014-06-10 44 views
1

我在GridView中有一個隱藏字段,並且這些值綁定到了gridview。隱藏字段中用逗號重複的值

讓我們假設隱藏字段的值爲1

當我試圖在代碼中取得數據的背後,隱藏字段的值更改爲「1,1」。

+0

您是否使用了'UpdatePanel'或jQuery的? –

+0

沒有..沒有更新面板 – user3679060

+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"

0

使用asp.net HiddeField控制,這樣您將確保每個hiddenfield將擁有唯一的客戶端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