2013-02-07 13 views
0

我有gridview,裏面有一個按鈕,我想調用它的點擊jQuery函數。無法觸發按鈕上的jQuery函數單擊GridView中的內容

這裏是我的narkup:

<asp:GridView ID="gvContactUs" runat="server" AllowSorting="True" AutoGenerateColumns="False" 
    DataKeyNames="ContactID" Width="100%" CellPadding="3" CellSpacing="1" 
    OnPageIndexChanging="gvContactUs_PageIndexChanging" 
    OnRowCommand="gvContactUs_RowCommand" 
    OnRowDataBound="gvContactUs_RowDataBound" 
    OnRowDeleting="gvContactUs_RowDeleting" 
    OnSorting="gvContactUs_Sorting" AllowPaging="True" 
    BackColor="White" BorderColor="White" BorderStyle="Ridge" 
    BorderWidth="2px" GridLines="None"> 
    <Columns> 
     <asp:TemplateField HeaderText="Edit" ItemStyle-HorizontalAlign="Center" HeaderStyle-Width="3%"> 
      <ItemTemplate> 
       <asp:Button Text="text" ID="hello" runat="server" /> 
      </ItemTemplate> 
      <HeaderStyle Width="7%" /> 
      <ItemStyle HorizontalAlign="Center" /> 
     </asp:TemplateField> 
     <asp:TemplateField HeaderText="Name" ItemStyle-HorizontalAlign="Left"> 
      <ItemTemplate> 
       <%#Eval("Name")%> 
      </ItemTemplate> 
      <ItemStyle HorizontalAlign="Left" /> 
      <HeaderStyle Width="11%" /> 
     </asp:TemplateField> 
     <asp:TemplateField HeaderText="Email" ItemStyle-HorizontalAlign="Left" HeaderStyle-Width="13%"> 
      <ItemTemplate> 
       <a href="mailto:<%#Eval("Email")%>" class="EmailLink"> 
       <%#Eval("Email")%></a> 
      </ItemTemplate> 
      <HeaderStyle Width="13%" /> 
      <ItemStyle HorizontalAlign="Center" /> 
     </asp:TemplateField> 
     <asp:TemplateField HeaderText="Phone" HeaderStyle-HorizontalAlign="center" HeaderStyle-Width="7%"> 
      <HeaderStyle HorizontalAlign="Center"></HeaderStyle> 
      <ItemStyle HorizontalAlign="Center" Width="40px" /> 
      <ItemTemplate> 
       <%#Eval("Phone")%> 
      </ItemTemplate> 
      <HeaderStyle Width="8%" /> 
     </asp:TemplateField> 
     <asp:TemplateField HeaderText="Status" HeaderStyle-HorizontalAlign="center" HeaderStyle-Width="7%"> 
      <HeaderStyle HorizontalAlign="Center"></HeaderStyle> 
      <ItemStyle HorizontalAlign="Center" Width="40px" /> 
      <ItemTemplate> 
        <%#Eval("Subject")%> 
      </ItemTemplate> 
      <HeaderStyle Width="13%" /> 
     </asp:TemplateField> 
     <asp:TemplateField HeaderText="Delete" ItemStyle-HorizontalAlign="Center" HeaderStyle-Width="7%"> 
      <ItemTemplate> 
       <asp:LinkButton CommandName="Delete" CommandArgument='<%#Eval("ContactID") %>' runat="server" ID="lnkbtnDelete"> 
        <img src="Images/delete.gif" border="0" alt='Click to Delete this Entry' title='Click to Delete this Entry' /> 
       </asp:LinkButton> 
      </ItemTemplate> 
      <HeaderStyle Width="7%" /> 
      <ItemStyle HorizontalAlign="Center" /> 
     </asp:TemplateField> 
    </Columns> 
    <FooterStyle BackColor="#C6C3C6" ForeColor="Black" /> 
    <HeaderStyle Height="30px" BackColor="#3E3050" Font-Bold="True" ForeColor="#ffffff" /> 
    <PagerStyle ForeColor="Black" BackColor="#C6C3C6" HorizontalAlign="Right" /> 
    <RowStyle Height="25px" BackColor="#DEDFDE" ForeColor="Black" /> 
    <SelectedRowStyle BackColor="#9471DE" Font-Bold="True" ForeColor="White" /> 
    <SortedAscendingCellStyle BackColor="#F1F1F1" /> 
    <SortedAscendingHeaderStyle BackColor="#594B9C" /> 
    <SortedDescendingCellStyle BackColor="#CAC9C9" /> 
    <SortedDescendingHeaderStyle BackColor="#33276A" /> 
</asp:GridView> 

jQuery代碼是:

$('[id$=hello]').live('click', function (e) { 
     alert('hi8'); 

    }); 


    $(function() { 

     $('input[id$=hello]').click(function() { 

      alert('hikkk'); 
      return false; 
     }); 
    }); 

這兩件事我都試過,但還是沒能調用jQuery的功能。 請幫我...

+0

'$('[ID $ = hello]')'應該是'$('[#hello]')' –

+0

時間戳:2/7/13 3:06:55 PM 錯誤:錯誤:語法錯誤,不能識別的表達式:[#hello] 源文件:HTTP://本地主機:3838/PotoMacRiverFund4.0 /管理/ JsFiles/jQuery的1.7.2.min.js 行:3 Error got – Ram

+0

對不起,是''('#hello')'''''''' –

回答

2

使用attributes contains選擇*代替attribute ends with$。同時確保您已成功包含所需的jQuery庫。

$(function() {  
     $('input[id*=hello]').click(function() {  
      alert('hikkk'); 
      return false; 
     }); 
}); 
+0

謝謝@Adil它爲我工作 – Ram

+0

不客氣。 – Adil

0

嘗試這個

$(document).ready(function() { 
    $('input[id$=hello]').click(function() { 
     //Your logic goes here 
     alert('Im clicked'); 
    }); 
}); 
+0

沒有它沒有工作.......... – Ram

+0

打開你的開發工具欄,看看它是否會引發任何錯誤? – asifsid88

+1

它不會拋出任何錯誤,但無法觸發點擊 – Ram

0

你爲什麼不使用OnClientClick在您的按鈕

<asp:Button Text="text" ID="hello" runat="server" OnClientClick="return check();" /> 

<script type="text/javascript"> 
     function check() 
     { 
       alert("hi") 
       return false; 
     } 
</script> 
0

試試這個:

$(document).on('click', '[id*="hello"]', function(){ 
    alert('clicked.'); 
});