IE8不支持getElementsByName
场景:
点击单选按钮,改变被选中元素的orderway属性的值。
参数:
CLICK_FIELD:js全局变量,被选中元素的name属性的值。
thisRadio:单选按钮对象 -> οnclick=“javascript:changeSelectedOrder(this)”。
//IE8不支持getElementsByName
//使用js编写兼容代码:
function changeSelectedOrder(thisRadio){
//已选框无字段被选中时
if(!CLICK_FIELD){
return false;
}
//IE8不支持getElementsByName
var obj = document.getElementsByName(CLICK_FIELD);
if(obj.length > 0){
//大于0,意味着此时用户的浏览器内核支持getElementsByName
$(obj).attr('orderway',thisRadio.value);
}else{
//针对IE8内核
var aEle=document.getElementsByTagName('*');
for(var i=0;i<aEle.length;i++){
if(aEle[i].getAttribute("name")==CLICK_FIELD){
$(aEle[i]).attr('orderway',thisRadio.value);
}
}
}
console.log($(obj).attr('orderway'));
console.log(obj.length>0);
console.log(CLICK_FIELD);
}