Самый быстрый способ снять флажок «Как при выставлении счета» при изменении любого поля доставки - PullRequest
1 голос
/ 08 января 2012

У меня есть набор полей для BillingInfo и 2-й набор полей в той же форме (скрыто по умолчанию), где поля отображаются следующим образом:

Billingfieldset
  FirstName
  LastName
  ...

Shippingfieldset
  ShippingFirstName
  ShippingLastName
  ...

По умолчанию, когда страница загружается, чтобы иметь флажок "SameAsBilling": проверено и все поля заполнены согласно полям выставления счетов.Я хочу, чтобы jQuery снял этот флажок, как только пользователь начнет вводить новое значение в любое из полей доставки.

Я бы хотел избежать длинного теста «если / тогда», который вручную проходит через всеfields ': изменились события, но, поскольку между наборами полей нет однозначного отображения, возможно, это невозможно?

Ответы [ 2 ]

1 голос
/ 09 января 2012
var $shippingFields = $('#Shippingfieldset').find('input').on('keyup', function()
{
    $('#sameAsCheckbox').prop('checked', false);
    $shippingFields.off();
});
0 голосов
/ 09 января 2012

Простое решение:

  1. Поместите класс во все необходимые поля (например, .shipping)
  2. Поместите класс в поле SameAsBilling (например, .sameasbilling)
  3. Используйте селектор вот так:

    // Catch keydown
    $('.shipping').live('keydown','uncheckBox');
    
    // Uncheck box
    function uncheckBox() {
       $('.sameasbilling').removeAttr('checked');
    };
    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...