как изменить текст в кнопке без изменения других тегов

0

как изменить текст в кнопке без изменения других тегов?

моя кнопка:

<button id="ItemForSearch" type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
All Items
<span class="caret"></span>
</button>

мое раскрывающееся меню:

<ul class="dropdown-menu">
 <li><a id="AllItems" href="#">AllItems</a></li>
<li><a id="Countries" href="#">Countries</a></li>
<li><a id="Ships" href="#">Ships</a></li>
</ul>

Я пробовал следующее, но тег span был удален:

 $('.dropdown-menu li a').click(function () {
 var item = $(this).text();
$('button[id=ItemForSearch]').text(item);
});

Мне нужно просто изменить текст. Но я понятия не имею!

  • 1
    $ ('# ItemForSearch'). Text (item), вы можете использовать id для изменения текста кнопки
Теги:

1 ответ

2
Лучший ответ

Вам нужно заменить только первый текстовый узел в кнопке, вот в чем проблема. Когда вы используете .text() или .html() он заменяет все содержимое кнопки.

Пытаться

$('.dropdown-menu li a').click(function () {
    $('#ItemForSearch').contents().eq(0).replaceWith($(this).text());
});

Демо: скрипка

  • 0
    Большое спасибо @Arun P Johny. Вы помогали мне несколько раз. Ты лучший.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню