2013-03-06 6 views

Odpowiedz

9

Spróbuj

$("#<%=btA.ClientID%>").click(); 

jeśli to nie zadziała spróbuj ostrzegać tego i sprawdzić, czy jest uzyskiwanie dostępu przez JQ

alert($("#<%=btA.ClientID%>").length); 

Czy zdarzenie z jquery zarejestrowany w następujący sposób

$(function(){ 
    $("#<%=btA.ClientID%>").click(function(){ 
    // your logic here 
}); 
}); 

Jeszcze jedno pytanie, czy ładujesz ten przycisk bezpośrednio po wczytaniu strony lub masz jakiś panel aktualizacji strony, który ładuje go po słowie?

Jeśli tak to należy powiązać zdarzenie przycisku w następujący sposób

$(document).on('click',"#<%=btA.ClientID%>", function() {...}); 
+0

yup, długość oddaje powiadomienie pole „1” – Mathematics

+0

nie mogę umieścić logiki w jQuery jako swój kod za metody – Mathematics

+0

może trzeba wywołać zdarzenie DOM .... w takim razie spróbuj tego ... ** ("# <% = btA.ClientID%>") [0] .click(); ** ... Mam nadzieję, że to zadziała ... –

1
$("#<%=btA.ClientID%>").click(); 

Wierzę, że to jedyny sposób.

2
$("#<%=btA.ClientID%>").click(); 

Or 

$("input[id$='yourbuttonId'").click(); 

powodu, że nie uruchamiają roboczy jest Jquery tylko pozwalają wywołać kliknięcie że Jquery stworzył. Użyj trasy wyzwalacza po napisaniu detektora kliknięcia.

1

Możliwe, że próbujesz połączyć wydarzenie, gdy formant nie zostanie załadowany na stronę.

Spróbuj tego zamiast tego. Kupuje trochę czasu, a następnie podłącza wydarzenie.

setTimeout(function() { 
    $("#<%=btA.ClientID%>").trigger('click'); 
}, 10); 
+0

przepraszam, ale moja linia kodu jest w "$ (dokument).ready (function() ", więc nie sądzę, że to jest problem – Mathematics

+0

, ale miałem podobny problem, gdy wyzwalacz nie działał, nawet gdy znajdował się wewnątrz document.ready(). setTimeout rozwiązał to dla mnie. –

2

To bije mnie, ponieważ powinno to być bardzo proste. Właśnie wypróbowałem to i to działało bez żadnych problemów. Tu jest mój znaczników:

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title></title> 
</head> 
<script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script> 
<script type="text/javascript"> 
    $(document).ready(function() { 
     $("#<%=btA.ClientID%>").trigger('click'); 
    }); 
</script> 
<body> 
    <form id="form1" runat="server"> 
    <div> 
     <asp:Label ID="lbA" runat="server"></asp:Label> 
     <asp:Button ID="btA" runat="server" OnClick="btA_Click" Text="Click Me!" /> 
    </div> 
    </form> 
</body> 
</html> 

... i mam tej metody w moim kodu za:

protected void btA_Click(object sender, EventArgs e) 
{ 
    lbA.Text = "Hello World!"; 
} 

Po uruchomieniu aplikacji, natychmiast wyzwala zdarzenie click z btA przycisk pożarów i Witaj, świecie! tekst jest renderowany na etykiecie. Sprawdź, czy możesz czegoś nie zauważyć.

Powiązane problemy