jQuery - заменить стандартное действие нажатия кнопки () - PullRequest
1 голос
/ 07 февраля 2012

Я использую радио-кнопки с некоторым загруженным Ajax-контентом. В основном из-за других функциональных возможностей сети, переключатели полностью основаны на jQuery. Поэтому всякий раз, когда я нажимаю на них, вызывается определенное действие. Во всяком случае - я не могу прийти к решению с 1 проблемой. Я хочу, чтобы переключатели были отключены, когда содержимое AJAX не загружается. Я добавил флаг до / при обратном вызове содержимого ajax, поэтому теперь действие click (), которое я определил для переключателей, не работает при загрузке содержимого ajax.

Хотя стандартное действие переключателей все еще работает (с использованием «return false;»). По стандарту я имею в виду - радио-кнопка проверяется после нажатия - пока ничего не должно происходить. Есть идеи как это отключить? Ниже приведена часть кода:

$('#radiobutton1').click(function() {
    if (!$('#rightImage').parent().children().is(':animated') && loadrelease==true) {
      actions to do here
    }
    return false;
  })

Ответы [ 2 ]

3 голосов
/ 07 февраля 2012

В начале вашего Ajax-вызова отключите переключатель:

$('#radiobutton1').attr('disabled','disabled')

По завершении включите его снова:

$('#radiobutton1').attr('disabled','')
2 голосов
/ 07 февраля 2012

Я полагаю, что вы хотите отключить все переключатели при отправке ajax-вызова.Вы можете сделать это с помощью событий AJAX.Я предлагаю добавить класс ко всем переключателям, которые вы хотите отключить во время вызова AJAX.

   $.ajax({
         url: '../Controller/Action',
         data: { data: 'data'},
         dataType: 'json',
         type: 'post',
         beforeSend: function () {
             //Disable your radio buttons here
              $('.ajaxRadioButtons').attr('disabled','true');
           },
         success: function (data) {

         },
        error: function () {

        },
        complete: function () {
        //enable your radio buttons here
        $('.ajaxRadioButtons').attr('disabled','');
 }
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...