ASP.NET кнопка логика на стороне сервера не выполняется после JavaScript - PullRequest
0 голосов
/ 21 марта 2012

У меня большие проблемы с проверкой на стороне клиента с использованием JavaScript и jQuery.

У меня есть 2 пользовательских элемента управления (.ascx) на странице (.aspx), каждый со своей собственной кнопкой, определенной следующим образом

Page
    user control 1
        textbox 1
        textbox 2
        Button 1
    user control 2
        textbox 3
        textbox 4
        Button 2

И кнопка 1, и кнопка 2 имеют один и тот же класс CSS. У меня также есть скрипт JavaScript, на который ссылается страница.

Используя jQuery, я могу точно выбирать кнопки и привязывать события кликов к ним следующим образом:

$('.buttonCssClass').click(function() {
    // If the user control fields are not valid then do nothing

    if (typeof (Page_IsValid) == 'undefined' || Page_IsValid) {
        return false;
    }

    // If the user control fields are valid then 
    // disable the button and replace the CSS class and add an image (progress spindle)
    // until the processing is over - this is to prevent the user from clicking multiple              
    // times for long running and async processes.
});

Когда я нажимаю кнопку 1, я хочу проверить правильность только полей в этом пользовательском элементе управления, а не всех полей на странице. Прямо сейчас все поля во всех элементах управления на странице проверены на достоверность - это означает, что моя функция JavaScript всегда возвращает false.

Может ли кто-нибудь помочь мне с этим?

Ответы [ 2 ]

0 голосов
/ 21 марта 2012

Укажите ValidationGroups, чтобы не вся страница была проверена.Это также работает на стороне клиента:

if(typeof(Page_ClientValidate) == 'function')
    return Page_ClientValidate("MyValidationGroup");
0 голосов
/ 21 марта 2012

может быть, вы можете проверить в функции щелчка, который управления вызывает событие.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...