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; } (责任编辑:好模板) |