2013-06-19 61 views
0

我只是想讓jQuery在我的頁面上工作,但效果並不好。 我已經嘗試了很多不同的解決方案,我在網上找到了,但到目前爲止唯一已經工作的是在代碼隱藏方面。只有「警惕」沒有別的。jQuery和asp.net不會合作

button1.Attributes.Add("onclick", "alert(\"hello\")"); 

在頁頭:

<script type="text/javascript" src="../../scripts/jquery-1.5.1.js"></script> 
<script type="text/javascript"> 
    $(document).ready(function() { 
     $("#button1").click(function(event){ 
     alert("Hello world!"); 
     }); 
    }); 
</script> 

在頁面主體:

<asp:Button ID="button1" runat="server" Text="button" /> 

我得到的按鈕,但是當我點擊它不是一個該死的事情發生了。

編輯:

非常感謝快速回答"#<%=button1.ClientID %>"解決我的問題,而是一個新的顯示出它的自我。

$(document).ready(function() { 
    $("#<%=button1.ClientID %>").click(function() { 
     $("#<%=div1.ClientID %>").fadeOut(); 
    }); 
}); 

它說, 「DIV1」 不存在(雖然它的確)

回答

0

你不需要這個

button1.Attributes.Add("onclick", "alert(\"hello\")"); 

請檢查以下的代碼。

<script type="text/javascript"> 
$(document).ready(function() { 

    //client id************ 
    $("#<%=button1.ClientID %>").click(function(event){ 
     alert("Hello world!"); 
    }); 
    }); 
</script> 

它會工作。如果你在瀏覽器中檢查你的HTML源代碼,你會看到button1被改變了。如果你使用clientid,你將解決你的問題

+1

只是做一個額外的評論:OP也可以在頁面頂部的Page指令中使用ClientMode屬性。例如。 ClientIDMode =「Static」..另外,請不要忘記在jQuery click事件處理程序中返回false以防止回發到服務器。 –

+0

請檢查我對我的問題所做的修改。如果你能幫助我,我會非常感謝; –

+0

好的,非常感謝)=) –