2013-02-24 127 views
0

這是在GridView:如何從gridview使用javascript獲取隱藏字段的值?

<ItemTemplate>        
      <asp:TextBox ID="txtAction" Text='<%# Bind("ch_flcode") %>' runat="server" 
      Width="60%" Columns="50" OnChange="javascript:HandlerCodeTextChange1(this);" AutoPostBack="true"> </asp:TextBox> 
      <asp:HiddenField ID="hidempCode1" runat="server" /> 
      <asp:HiddenField ID="hidempName1" runat="server" /> 
    </ItemTemplate> 

我想用hiddenfields值在JavaScript

JavaScript代碼:

function HandlerCodeTextChange1(txtBox1) { 
      var gv = document.getElementById("<%=gridSIupdate.ClientID%>"); 
      //var Rows = gv.getElementsByTagName("tr"); 
      if (txtBox1.value.indexOf(':') == "-1") { 
       txtBox1.value = ""; 
       txtBox1.focus(); 

       gv.getElementById('<%=hidempCode1.ClientID%>').value = ""; 
       gv.getElementById('<%=hidempName1.ClientID%>').value = ""; 
      } 
      else { 
       var code = txtBox1.value.split(':'); 
       gv.getElementById('<%=hidempCode1.ClientID%>').value = code[0]; 
       gv.getElementById('<%=hidempName1.ClientID%>').value = code[1]; 
      } 
     } 

如何使用javascript獲得hiddenfields價值?

+0

顯示我們的** **生成的標記。對JavaScript而言,重要的是瀏覽器所看到的,而不是服務器所看到的。 – 2013-02-24 06:44:42

+0

@rohit,最好使用jquery .data()將相應的數據存儲在DOM中,而不是依賴從gridview中獲取數據。你可以在你綁定你的gridivew的同時渲染出相關的jquery ......只是把它吐出來成文字。 – 2013-02-24 06:46:42

+0

我在gridview項目模板中使用ajax auto extender列表,這些隱藏字段分別在javascript代碼中保存empcode和empname,但是我不知道如何去做 – 2013-02-24 08:21:02

回答

0

<asp:HiddenField>呈現爲:

<input type="hidden"> 

再加上他們有一個ID,所以你可以用它來選擇它:

field = document.getElementById("hidempCode1"); 
+0

在gridview中並不是那麼簡單。你不能使用clientidmode =「Static」。如果沒有這樣的話,這個id會呈現爲亂碼 – 2013-02-24 06:45:11

1

使用jQuery?

jQuery('[id$=hidempCode1]').val(); 
jQuery('[id$=hidempName1]').val(); 

這將選擇具有與hidempCode1 & hidempName1結束IDS元件。

+0

這個OP會以錯誤的方式去做,他顯然想要抓住特定行的ID。 – 2013-02-24 06:47:36

0

試試這個:

<%= hidempName1.ClientID %> 
相關問題