2011-05-26 70 views
1

我有一個鏈接的網格,我想實現的是當鏈接被點擊時,打開一個模式窗口。我的模式正常工作。我只是有問題獲得鏈接去做一些事情。以下是我的示例代碼。jquery和asp.net gridview的幫助

ASPX:

<asp:GridView AutoGenerateColumns="False" Width="100%" ID="grvUsers" runat="server"> 
    <Columns> 
     <asp:TemplateField HeaderText="Delete"> 
      <ItemTemplate> 
       <asp:LinkButton ID="Label1" runat="server" Text='<%# eval("ID") %>'></asp:LinkButton> 
      </ItemTemplate> 
     </asp:TemplateField> 
    </Columns> 
</asp:GridView> 

HTML渲染:

<table cellspacing="0" rules="all" border="1" id="grvUsers" style="width: 100%; border-collapse: collapse;"> 
    <tr> 
     <th scope="col">Delete</th> 
    </tr> 
    <tr> 
     <td> 
      <span id="grvUsers_Label1_0">23</span> 
     </td> 
    </tr> 
</table> 

的jQuery:

$(document).ready(function(){ 
    $('td:nth-col(0)').click(function(){ 
     alert("OMG"); 
    }); 
}); 
+0

凡在HTML你看到一個''元素? – Chad 2011-05-26 15:57:32

+0

對不起,我已更新。 – jack 2011-05-26 16:04:41

+0

它可以使用內置的jquery選擇器':first-child'。什麼是'$('td:nth-​​col(0)')'的結果,你有結果嗎? – 2011-11-21 19:08:33

回答

1

而不是試圖加事件與JS可你只需要使用:

<asp:LinkButton ID="Label1" onClick="myAlertFunction();" runat="server" Text='<%# eval("ID") %>'></asp:LinkButton> 

我建議你看看這個jQuery的文檔: Jquery Dialog w/Modal

+0

好的,所以當我打電話給該功能時,我該如何顯示模態?或者我應該說如何從javascript函數調用jquery?對不起,我是一個noob。 – jack 2011-05-26 16:00:24

+1

@jack這是關於捕獲點擊事件的問題,還是關於如何設計模態彈出窗口的問題?捕獲一個事件的 – Chad 2011-05-26 16:10:48

+0

。我想要發生的是鏈接點擊時,它會打開模式窗口。 – jack 2011-05-26 16:12:08

0
  1. 你可以使用AJAX的模式彈出,做工優於一大堆使用jquery庫(有例外..)

  2. 您可以使用一個選擇命令字段作爲刪除並處理您的SelectIndexchanging事件或刪除任一。

添加到您的GridView

<asp:CommandField HeaderText="Delete" ButtonType="Link" ShowSelectButton="true" 
SelectText='<%# eval("ID") %>' /> 

代碼隱藏:

protected void mygridview_SelectedIndexChanging(object sender, GridViewSelectEventArgs e) 
{ 
     //here you can do anything with the id 
     string id = mygridview.Rows[e.NewSelectedIndex].Cells[1].Text; 

     mdlPopup.Show(); 
} 

阿賈克斯彈出:

<asp:Button id="btnShowPopup" runat="server" style="display:none" /> 
<ajaxToolkit:ModalPopupExtender 
ID="mdlPopup" 
runat="server" 
TargetControlID="btnShowPopup" 
PopupControlID="pnlPopup" 
CancelControlID="btnClose" 
BackgroundCssClass="Inactive" /> 
<asp:Panel ID="pnlPopup" runat="server" Width="500px" style="display:none;"> 
    <!--here you put any content that will go inside your popup--> 
</asp:Panel>