Задать вопрос
@grigorie1990

Странная реакция на data-?

Добрый вечер!

Наблюдается странная реакция на атрибут data-d.
<div class="model-selector" data-model="Solaris" >
				<div class="col-xs-12 col-sm-6 col-md-3">
					<div class='section-profits__model'>
						<button class="btn btn-general section-profits__block-profit showModal" data-d="152 000"
									href="#modalWindow1">Выгода до 152 000</button>
						</div>
					</div>
				</div>
			</div>

При вызове из jquey атрибут data-d не читается, но если его перенести в главный div, то читается

$('.model-selector').click(function () {
        $("[name='modelName']").val(this.getAttribute('data-model'));
        $("[name='dName']").val(this.getAttribute('data-d'));
});


modelName и dName - это названия полей вызываемой формы

И еще маленький вопрос: почему $("[name='dName']").val(this.text()); не работает?

Всем спасибо за ответы и хорошего вечера!
  • Вопрос задан
  • 134 просмотра
Подписаться 1 Простой 2 комментария
Решения вопроса 1
ThunderCat
@ThunderCat Куратор тега JavaScript
{PHP, MySql, HTML, JS, CSS} developer
При вызове из jquey атрибут data-d не читается, но если его перенести в главный div, то читается
по тому что this в данном контексте это <div class="model-selector" data-model="Solaris" > и никак не кнопка внутри него?
$('.model-selector').click(function () {
        $("[name='modelName']").val($(this).data('model'));
        $("[name='dName']").val($(this).find('button').data('d'));
});
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
villiwalla
@villiwalla
HTML-верстка
// JQ
$(this).data('model');
$(this).text();

// JS
this.dataset.model;
this.innerText;
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы