0

我对 JS 知之甚少,必须完成以下任务:

  • 我们使用第三方模块,它在 magento 选项中启用图像。我无法修改以下的html结构,只能通过jquery。
  • 我们要隐藏 RADIO BUTTON 并使用缩略图作为按钮
  • 选择后,图像将获得不同的样式(不知道到底是什么,可能是边框)
  • 此外,输入的名称(即 SPAN 中)应该出现在某处 - 图像上方。
  • 将图像并排放置的样式是 CSS 的小菜一碟。问题出在 Jquery 上。此外,工具提示还可以。

我们想要的样子:http://www.inusual.com.br/chaise-anelideos.html 今天的样子:http://www.inusual.com.br/namoradeira-francesca.html他们的 行为不同,因为他们是不同的模块。

嗯,HTML 代码基本上是这样的:

<ul class="options-list">
  <li>
    <a class="img-radio">
      <img class="small-image-preview" src="#"/>
    </a>
    <input class="radio required-dependent" type="radio" value="somevalue" onclick="dependentOptions.select(this);opConfig.reloadPrice();">
    <span class="label">
      <label for="xxx">Option Name</label>
    </span>                                 
  </li>
  <li>
    <a class="img-radio">
      <img class="small-image-preview" src="#"/>
    </a>
    <input class="radio required-dependent" type="radio" value="somevalue" onclick="dependentOptions.select(this);opConfig.reloadPrice();">
      <span class="label">
    <label for="xxx">Option Name</label>
    </span>                                 
  </li>
</ul>

我正在尝试的 jQuery 部分是这样的:

jQuery(window).load(function()
{
  jQuery('li a.img-radio').click( function(){
  jQuery('li a.img-radio.selected').removeClass('selected');
  jQuery(this).addClass('selected');
  jQuery(this).find('input:radio').attr('checked','checked');
});
})

关于如何使这项工作的任何提示?非常感谢!

4

1 回答 1

1

您不能这样做jQuery(this).find('input:radio'),但可以将其替换为:

jQuery(this).find('input[type=radio]')

如果您想将收音机设置为选中,attr('checked' , 'checked')可能会起作用,但我更喜欢这个:

jQuery(this).find('input[type=radio]').checked = true;
于 2013-01-15T01:35:24.057 回答