首页 > 网站 > 建站经验 > 正文

解决ECshop在IE下js无法获得默认属性的方法

2024-04-25 20:43:47
字体:
来源:转载
供稿:网友

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;

}

以上就是本文章的内容,希望对大家有所帮助

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表