Cms技巧
分享创造价值 合作实现共赢

Cms技巧

当前位置:主页 > 新闻动态 > Cms技巧 >

ECshop在IE浏览器下js无法获得默认属性

发布时间:2018-04-10 12:22作者:admin来源:未知点击:


商品属性美化之后

属性都用 type= hidden 形式
就算给了默认值 checked=true
IE进入第一次加载的时候还是无法获得attr的值。
解决:


在goods.dwt 属性加一个默认值 defaultChecked
如:
<!-- {foreach from=$spec.values item=value key=key} -->
              
              <span class="fl junma {if $key eq 0}hover{/if}" name="spec_{$spec_key}" value="{$value.id}"> {$value.label}
                </span>
           <input type="hidden" name="spec_{$spec_key}" value="{$value.id}" {if $key eq 0}checked="true" defaultChecked="true"{/if}>
             <!-- {/foreach} -->

common.js里面

js修改为:

/**
 * 获得选定的商品属性
 */
function getSelectedAttributes(formBuy)
{
  var spec_arr = new Array();
  var j = 0;
 
  for (i = 0; i < formBuy.elements.length; i ++ )
  {
    var prefix = formBuy.elements[i].name.substr(0, 5);
    if (prefix == 'spec_' && (
      ((formBuy.elements[i].type == 'hidden' || formBuy.elements[i].type == 'checkbox') && formBuy.elements[i].checked) ||
      formBuy.elements[i].tagName == 'SELECT' || formBuy.elements[i].getAttribute('defaultChecked')))
    {
        
      spec_arr[j] = formBuy.elements[i].value;
      j++ ;
    }
  }
 
  return spec_arr;
}

TOP

QQ客服

18910140161