1. 程式人生 > >關於getElementsByName("")的使用

關於getElementsByName("")的使用

在使用JavaScript寫JSP頁面時,我們經常使用getElementsByName("")方法。但是很多標籤使用此方法並不可行。

name屬性是input標籤的內建屬性,早期瀏覽器的getElementsByName方法是為了方便的獲取使用者的輸入。由於name只是input的內建屬性,其它標籤沒有,所以getElementsByName方法不能在別的標籤中識別這一屬性,因此getElementsByName方法只能用於input標籤。

未解決此問題,我總結了兩種解決方案:

1.使用jQuery來獲取。

例:var statusList=getTdsByName("status");  替換為 var statusList=$('[name=status]');

2.新增方法

例:開發過程中我是用getElementsByName獲取相同name的div標籤,但是div本身沒有Name屬性,然後參考網上的辦法,可以自己寫方法來獲取。如下:

function getDivsByName(sname){
		var t = document.all;
		var divs= new Array();
		for(var i=0;i<t.length;i++) if(t[i].name == sname)  divs.push(t[i]);
			return divs; 
		}