Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > изменения значения td с параметром colname


Автор: motorway 28.10.2008, 15:38
Есть страница aspx, генерируемая на сервере. Пользователь получает html.
Задача: с помощью ява-скрипта изменить содержимое тега td в этом html, если имеется параметр colname.

Пример:

<td  colName="A" type="Column" dataBound="True" isGrouped="False" isSorted="False" sortOrder="None" class="WG5-Header" style="width:100px;height:20px;" ><span  style="overflow-x: hidden; width: 100%">A</span><span class="DefSI"></span></td>

Нужно изменить текст, в данном случае A, а также если можно, попробовать изменить само colname.

Автор: bars80080 28.10.2008, 15:48
а ты можешь задать ячейке более стандартный атрибут, скажем id?

Автор: motorway 28.10.2008, 16:03
наверно, нет. Это генерируется само (ну или надо очень глубоко влезать). А так нельзя никак?

Автор: comtat 28.10.2008, 16:20
можно, но это есть не верно
Код

<html>
<body>
<script>
function search() {
    var val = document.getElementById('q').value;
    var elems = document.getElementsByTagName('td');
    for (i = 0; i < elems.length; i++) {
        if (elems[i].getAttribute('colName') == val) {
            alert(elems[i].innerHTML);
            break;
        }
    }
}
</script>
<table>
<tr>
<td  colName="A" type="Column" dataBound="True" isGrouped="False" isSorted="False" sortOrder="None" class="WG5-Header"
style="width:100px;height:20px;" >
<span  style="overflow-x: hidden; width: 100%">A</span><span class="DefSI"></span></td>
<td  colName="B" type="Column" dataBound="True" isGrouped="False" isSorted="False" sortOrder="None" class="WG5-Header"
style="width:100px;height:20px;" >
<span  style="overflow-x: hidden; width: 100%">B</span><span class="DefSI"></span></td>
</tr>
</table>
<input id='q' type='text' value='' /><input type='button' value='Найти' onclick='search();' />
</body>
</html>

Автор: motorway 28.10.2008, 16:30
А почему не верно?

Что-то я пробую так сделать, но не работает. Ничего не алертится.

Если эта функция у меня вызывается в iframe, то что делать вместо document.getElementById('q').value, чтобы получить доступ к основному html?


Автор: bars80080 28.10.2008, 18:33
Код

parent.document.getElementById('q').value

Автор: motorway 28.10.2008, 18:58
Похоже, что IE пишет, что object не поддерживает данное свойство или метод. В общем, что-то не получается, и я, наверно, по-другому сделаю.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)