2009-12-02 42 views
0

我試圖選擇一組div元素並將其高度屬性更改爲auto。我用做的是,目前的jQuery代碼是:使用ASP.net AJAX選擇DOM元素類似於JQuery的做法

$("div#TreeView1 td > div").css("height","auto"); 

不幸的是我必須使用MS JavaScript的LIB(儘管我抗議)。我如何使用微軟的ASP.net AJAX做類似的事情?

+0

你不能同時包含兩個庫嗎?他們解決不同的問題領域。 –

+0

我的老闆希望所有的Web開發人員都使用一個JavaScript框架,以便將來更易於維護。還包括兩個js框架會減慢初始網頁加載(可能幾乎不明顯)。不幸的是我有我的手綁:(: – Darwyn

+0

嘗試讓你的老闆閱讀此:http://stackoverflow.com/questions/498680/pros-and-cons-of-ms-ajax-vs-jquery-in-an-asp -net-MVC-應用 –

回答

2

直接翻譯爲$("div#TreeView1 td > div").css("height", "auto")使用ASP.NET AJAX框架提供的工具將是:

var results = []; 

// "#TreeView1 td" 
var tds = $get('TreeView1').getElementsByTagName('td'); 

// would have just used Array.forEach here but 
// MS borked it in debug mode for NodeList 
for(var i=0, leni=tds.length; i < leni; i++) { 
    var td = tds[i]; 
    // "td > div" 
    for(var j=0, lenj=td.childNodes.length; j < lenj; j++) { 
    var node = td.childNodes[j]; 
    if(node.nodeType === 1 && node.nodeName.toLowerCase() === 'div') { 
     results.push(node) 
    } 
    } 
} 

// .css("height", "auto") 
Array.forEach(results, function(element) { 
    element.style.height = 'auto' 
}); 

現在,讓老闆哪一個他/她寧願維持。真的,現在去問