Кнопка ASP.NET вызывает обратную передачу - PullRequest
4 голосов
/ 11 сентября 2009

У меня есть кнопка asp.net на странице. Я пытаюсь сделать это:

    $("#btn").click(function(e) {
        e.preventDefault();
        alert('hi');
    }

Но предупреждение никогда не появляется. Я должен использовать только кнопку ASP.NET, а не HTML.

Ответы [ 3 ]

1 голос
/ 11 сентября 2009

Постарайтесь, чтобы метод также возвращал false, и при нажатии на кнопки вы добавляете JavaScript. Как это:

$("#btn").click(function(e) {
    e.preventDefault();
    alert('hi');
    return false;
}

или добавьте его как функцию onclientclick, например:

 function ClickFunction() {
     alert('hi');
     return false;
 }

 <asp:Button OnClientClick="return Clickfunction();" />
1 голос
/ 11 сентября 2009

Хорошо, я получил ответ здесь

Использование jQuery для предотвращения возникновения событий на стороне сервера ASP.NET

Мне не хватало $(document).ready(function(). Так глупо с моей стороны!

1 голос
/ 11 сентября 2009

Убедитесь, что вы указали ClientID кнопки, а не "обычный" ID.

$("#<%= MyControl.ClientID %>").click(function() {
   alert(...);
   return false;
}

Также убедитесь, что это внутри обработчика document.ready ():

$(document).ready(function() {
    $("#<%= MyControl.ClientID %>").click(function() {
       alert(...);
       return false;
    }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...