尽量不要使用document.getElementsByTagName,用document.getElementById代替

document.getElementsByTagName()使用for(var i=0......i++)取值的时候存在问题,不能访问所有的标签;

所以尽量使用document.getElementById();

代码片段1:

var inputs = document.getElementsByTagName('input');
			
			for(var i=0,len=inputs.length;i<len;i++){
				var attr = document.createAttribute('readOnly');
				attr.value = true;
				inputs[i].setAttributeNode(attr);
                       .................................................

 代码片段1中inputs[i]取不全相应的element。

代码片段2:

for(var f in vo){
		var input = document.getElementById(f);
		if(input){
			var attr = document.createAttribute('readOnly');
			attr.value = true;
			input.setAttributeNode(attr);
		}else{
			continue;
		}
       ...............................

 用代码片段2解决问题。

相关推荐