Я использую функцию contents () в jQuery для получения некоторого текста в LI, который я не могу нацелить напрямую с помощью span или другого селектора.
Код, который я написалследующим образом:
$('#tierArray_' + tierId).contents().each(function(i, node) {
if (node.nodeName == "#text") {
node.textContent = name;
}
});
Это отлично работает в Firefox и изменяет целевой текст на то, что установлено в «name».В IE, однако, я получаю следующие ошибки:
«Объект не поддерживает это свойство или метод»
Похоже, это относится к строке «node.textContent = name», как когда я комментируюв этом случае ошибка исчезает.
В двух словах, я просто пытаюсь заменить некоторый текст вновь созданным текстом, разметка HTML выглядит следующим образом:
<li class="ui-state-default" id="tierArray_105">
<span style="display: block;" id="revoke_105">
<a class="tierStatus" title="Revoke" href="#">Revoke</a> |
<a class="tierEdit" id="edit_tier_105" title="Bla 3aaa11" href="#">Edit</a>
</span>
<span style="display: none;" id="active_105">
<a class="tierStatus" title="Activate" href="#">Activate</a> |
<a class="tierEdit" id="edit_tier_105" title="Bla 3aaa11" href="#">Edit</a>
</span>
Bla 3aaa11
</li>
Таким образом, текст послепоследний промежуток (Bla 4aaa11) должен быть заменен новым текстом.