Как удалить / очистить брата в JQuery и добавить - PullRequest
0 голосов
/ 02 мая 2018

Мне интересно, есть ли более чистый способ удаления всех братьев и сестер из элемента и последующего добавления html. Этот код находится в цикле for и каждый раз я обновляю filter_checkbox_price новым price_array [0]. Так что добавление не лучший вариант? Есть ли в jQuery функция замены?

Обновление: я ищу сначала добавить эти элементы, а затем заменить .filterOptionOnly и. filter_checkbox_price в следующем цикле

Код:

    $(this).find("label span.filter-label").siblings().remove();
    $(this).find("label span.filter-label").append("<span class='filterOptionOnly'>only</span>").after("<span class='filter_checkbox_price'>" + pos_currency_code + price_array[0] + "</span>");

HTML:

<label for="filter-pickup-location-4">
    <span class="filter-label" title="SFB: Orlando Sanford Intl Airport">
         <span class="label">SFB: Orlando Sanford Intl Airport</span>
         <span class="filterOptionOnly">only</span>
    </span>
    <span class="filter_checkbox_price">$111</span>
</label>

1 Ответ

0 голосов
/ 02 мая 2018

Если ваши элементы существуют при загрузке страницы,
Вы можете получить доступ и изменить их HTML, используя метод .html().

Ваш код должен быть таким:

var pos_currency_code = "$";
var price_array = [];
price_array[0] = 50;

$("label span.filter-label .filterOptionOnly").html('only');
$("label .filter_checkbox_price").html(pos_currency_code + price_array[0]);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<label for="filter-pickup-location-4">
    <span class="filter-label" title="SFB: Orlando Sanford Intl Airport">
         <span class="label">SFB: Orlando Sanford Intl Airport</span>
         <span class="filterOptionOnly">only</span>
    </span>
    <span class="filter_checkbox_price">$111</span>
</label>

Дополнительная информация: http://api.jquery.com/html/

Надеюсь, это поможет.

...