#jquery #html
#jquery #HTML
Вопрос:
Я пытаюсь изменить текст внутри тега на текст из выбранного элемента из списка.
Это список:
Это соответствующий html (только его часть)
<div class="categories">
<div class="cats"><a id="categoriaBtn995" class="button" href="#categoryTitle" title="button">Línea Blanca</a></div>
<br>
<div class="cats"><a id="categoriaBtn996" class="button" href="#categoryTitle" title="button">Desarrollo de Software</a></div>
<br>
<div class="cats down"><a id="categoriaBtn998" class="button" href="#categoryTitle" title="button">Esteticas - Belleza</a></div>
<br>
<div class="cats"><a id="categoriaBtn999" class="button" href="#categoryTitle" title="button">Publicidad</a></div>
<br>
</div>
Под этим div у меня есть раздел, в который я хочу поместить некоторую информацию об этих элементах.
Во-первых, мне нужно изменить заголовок, который является простым тегом:
<h1 id="categoryTitulo">Change this</h1>
Он должен изменить текст на элемент с class=»down»
Вот как я переключаю класс:
$(document).ready(function () {
$('a.button').click(function () {
$('.down').toggleClass("down");
$(this.parentElement).toggleClass("down");
});
});
И это то, что я пытаюсь прямо сейчас:
$('a.button').click(function () {
$('h1#categoryTitulo').text(
$('.down').text());
});
Я попытался поместить все это в JSFIDDLE, и по какой-то причине это действительно работает там, но не на моем сайте. Я надеюсь, что вы, ребята, сможете помочь мне найти другой способ для достижения этой цели.
Это то, чего я пытаюсь достичь: http://jsfiddle.net/2mAfT / Но со мной это не работает.
Комментарии:
1. Первое, что нужно сделать … элементы не могут совместно использовать идентификаторы! Они могут совместно использовать классы, но каждый элемент должен иметь либо свой собственный идентификатор, либо без идентификатора. Что у вас не работает? Есть ли какие-либо ошибки? Изменение вашего
id="categoriaBtn"
наclass="categoriaBtn"
может помочь с вашей проблемой2. Я изменю его и посмотрю, решит ли это проблему, спасибо.
3. Сделано @j_buckley, теперь все разделяет идентификаторы, но оно все еще не работает, ошибок нет. Текст из
h1
тега вообще не меняется.
Ответ №1:
вам нужно изменить свой #categoriaBtn, чтобы он выполнялся из class, а не id . Что-то вроде;
$('a[class$="button"]').click(function(){
$("#categoryTitulo').html('whatever you want here');
});
я не знаю, откуда вы получаете имя класса down или что-то еще, но это должно работать на все, что вы хотите
Комментарии:
1. Извините, я забыл изменить сценарий.
2. когда вы открываете сайт в своем браузере, нажмите клавишу F12, чтобы открыть инструменты разработчика, и если IE перейдет на вкладку script, выберите свою версию jquery из выпадающего списка рядом с «Начать отладку» и убедитесь, что она загружается правильно, мне кажется, это будет проблема со ссылкой на jQuery, еслион корректно работает в jsFiddle с тем же кодом.
3. Спасибо, Ник, теперь это работает, просто нужно добавить
$(document).ready(function ()
и изменить порядок скриптов.