ecshop商品屬性美化之后,屬性都用 type= hidden 形式,就算給了默認值 checked=true,IE進入第一次加載的時候還是無法獲得attr的值。ECshop在IE下js無法獲得默認屬性
解決:
在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;
}
以上就是本文章的內容,希望對大家有所幫助
新聞熱點
疑難解答