Я совершенствую свои навыки работы с jquery.
Вот моя проблема:
Я создаю систему вкладок с помощью jquery, и в своем HTML я добавил атрибут dataв мой список заказов и на мою вкладку выбрано:
let tabHeader = $('.x-nav-tabs-item');
let tabContent = $('.x-tab-pane');
let attributevalue = tabContent.attr('data-cs-tab-index');
tabHeader.click(function() {
tabHeader.removeClass('active');
$(this).addClass('active');
let match1 = $('.active a').attr('data-cs-tab-toggle');
tabContent.removeClass('active');
console.log(match1);
tabContent.attr('data-cs-tab-index').val(match1).addClass(active);
});
<ul class="x-nav" data-x-element="tab_nav" data-x-params="orientation-horizontal">
<li class="x-nav-tabs-item">
<a data-cs-tab-toggle="1">For High school graduates (under 19 yrs):</a>
</li>
<li class="x-nav-tabs-item active">
<a data-cs-tab-toggle="2">For Mature Students (19 years+):</a>
</li>
<li class="x-nav-tabs-item">
<a data-cs-tab-toggle="3">For LPNs applying for the RDPN Access program:</a>
</li>
</ul>
<div class="x-tab-content">
<div class="x-tab-pane" data-cs-tab-index="1">
<ul>
<li>Graduation from Grade 12 with a C+ average</li>
<li>Grade 12 English (minimum grade B)*</li>
<li>Grade 12 Biology (minimum grade C)</li>
<li>Grade 11 Math (Foundations, Principles or Precalculus – minimum grade C)</li>
<li>Grade 10 Science (minimum grade C)</li>
</ul>
</div>
<div class="x-tab-pane" data-cs-tab-index="2">
<ul>
<li>Grade 12 English (minimum grade B)*</li>
<li>Grade 12 Biology (minimum grade C)</li>
<li>Grade 11 Math (Foundations, Principles or Precaculus – minimum grade C)</li>
</ul>
</div>
<div class="x-tab-pane" data-cs-tab-index="3">
<ul>
<li>Copy of Licensing as Practical Nurse</li>
<li>Proof of the equivalent of 2 years (3600 hours) full-time Work Experience as an LPN</li>
</ul>
</div>
</div>
Это может быть одна идея о том, как решить проблему.Конечно, это не работает, я думаю о функции data () для извлечения значения другим подходом, например:
tabContent.each(function() {
let value = $(this).data('cs-tab-index');
console.log(value);
if (value == match1) {
$(this).addClass("active");
}
});
Или сценарий, подобный:
tabContent.removeClass('active');
tabContent.data('cs-tab-index').val(1).addClass('active');
Они оба не работают.
Любое предложение или кто-то, кто мог бы указать, где моя ошибка?