@XenK

'indexOf' of undefined?

Использую такое выражение:
if ($('div a').attr('data-content').indexOf('warning') + 1) {
    ...

Но в консоли, возникает такая ошибка:
Uncaught TypeError: Cannot read property 'indexOf' of undefined


HTML:
<div>
    <a data-toggle="popover" data-html="true" title="Блок #1" data-content="Загрузка..."
       role="button" data-placement="bottom"></a>
</div>

После вставки в атрибут data-content, получается такой HTML:
<div>
    <a data-toggle="popover" data-html="true" title="Блок #1" data-content="<div class="info">info</div><div class="warning">info</div>"
       role="button" data-placement="bottom"></a>
</div>


Как её исправить?
  • Вопрос задан
  • 4037 просмотров
Решения вопроса 1
@XenK Автор вопроса
Решил проблему функцией String для вставляемой строки.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@dmitryKovalskiy
программист средней руки
1) для data-атрибутов есть метод data().
$('div a').data('content')
2)Откройте консоль и выполните код
$('div a').attr('data-content')
Убедитесь в том что он возвращает. data-атрибуты чувствительны к регистру, например.
3) Объясните назначение вот этого -
<a data-toggle="popover" data-html="true" title="Блок #1" data-content="<div class="info">info</div><div class="warning">info</div>"
       role="button" data-placement="bottom"></a>
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы