0

I am trying to get my jqtransform'd radio buttons to switch to "checked" via my rowover javascript that I was already using.

Here is the script for the row over effect without the jqtransform:

function selectRowEffect(object, buttonSelect) {
  if (!selected) { 
    if (document.getElementById) {
      selected = document.getElementById('defaultSelected');
    } else {
      selected = document.all['defaultSelected'];
    }
  }

  if (selected) selected.className = 'moduleRow';
  object.className = 'moduleRowSelected';
  selected = object;



// one button is not an array
  if (document.checkout_address.shipping[0]) {
    document.checkout_address.shipping[buttonSelect].checked=true;
  } else {
    document.checkout_address.shipping.checked=true;
  }
}

function rowOverEffect(object) {
  if (object.className == 'moduleRow') object.className = 'moduleRowOver';
}

function rowOutEffect(object) {
  if (object.className == 'moduleRowOver') object.className = 'moduleRow';
}
//--></script>

Currently if I click on the row, it will actually select the radio button in my form but the jqtransform does not reflect that so it still looks like it is not clicked. I tried adding something like

jqTransformRadio.addClass("jqTransformChecked"); 

My JavaScript knowledge is quite limited. Any help is greatly appreciated.

4

1 回答 1

0

我认为您可以像这样更改您的 selectRowEffect() 函数:

function selectRowEffect(object, buttonSelect) {
    if (!selected) { 
        if (document.getElementById) {
            selected = document.getElementById('defaultSelected');
        } else {
            selected = document.all['defaultSelected'];
        } 
    }

    if (selected) selected.className = 'moduleRow';
    object.className = 'moduleRowSelected';
    selected = object;

    // Get checkbox element inside the row, then trigger the 'click' event.
    $('.jqTransformRadio', object).trigger('click');
}

我还没有测试代码,但我认为它会工作

于 2011-03-14T18:15:38.797 回答