Выберите элементы DOM, используя ASP.net AJAX, аналогично тому, как это делает Jquery - PullRequest
0 голосов
/ 03 декабря 2009

Я пытаюсь выбрать определенный набор элементов div и изменить их свойства высоты на auto. Код JQuery, который я использую для этого на данный момент:

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

К сожалению, мне приходится использовать MS javascript lib (несмотря на мои протесты). Как я могу сделать что-то подобное, используя Microsoft ASP.net AJAX?

1 Ответ

2 голосов
/ 03 декабря 2009

Прямой перевод для $("div#TreeView1 td > div").css("height", "auto") с использованием инструментов, доступных в ASP.NET AJAX Framework, будет:

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'
});

Теперь спросите у своего босса, кого бы он / она предпочел сохранить. Серьезно, иди спроси прямо сейчас .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...