если пустое innerHTML
Если попробовать назначить переменную вот так:
var a = document.getElementById('id тега').innerHTML;
а содержимое тега отсутствует, то вылезает ошибка, что нельзя прочитать свойство 'null'. Есть идеи, как назначить переменную, если innerHTML отсутствует? |
var a=document.getElementById('id тега');
a=!!a.innerHTML?a.innerHTML:'';
А можно узнать какому тегу ты присваиваешь этот идентификатор? |
Цитата:
Хочу помучить, что означает !! после равенства ? Правильно ли я понял, что если у a нету InnetHTML, то присваивается '', и что это такое? |
Цитата:
|
Цитата:
<td></td> |
Цитата:
|
atanov,
возможные причины: 1. скрипт запущен ранее чем сформирован DOM. 2. ошибка в id. |
Цитата:
В своем коде я в переменную «а» пытался "сохранить" элемент с указанным ID. Во второй строке я проверяю есть ли у полученного элемента это свойство, если оно есть, то в переменную «а» записывается значение этого свойства, в противном случае записывается строка длинною в 0 символов. Свойства «innerHTML» может не быть, если элемент не был найден Upd. Таки проверил, у input'ов это свойство имеется (https://jsfiddle.net/7ygwpfsb/). |
Цитата:
это ячейка таблицы: <td id = blablabla></td> |
atanov,
Цитата:
<html>
<head>
<title>Untitled</title>
</head>
<body>
<script type="text/javascript">
var a=document.getElementById('some_id');
alert(a!==null?'Элемент найден':'Элемента нет')
</script>
<table>
<tr>
<td id="some_id">asd</td>
</tr>
</table>
</body>
</html>
<html>
<head>
<title>Untitled</title>
</head>
<body>
<table>
<tr>
<td id="some_id">asd</td>
</tr>
</table>
<script type="text/javascript">
var a=document.getElementById('some_id');
alert(a!==null?'Элемент найден':'Элемента нет')
</script>
</body>
</html>
|
| Часовой пояс GMT +3, время: 02:09. |