Доброго времени суток.
У меня есть код с подобным содержанием:
<div class="asd">#define spl_b_bab_m ЗАМЕНИТЬ</div>
<div class="asd">#define spl_b_bar_m ЗАМЕНИТЬ</div>
<div class="asd">#define spl_b_mab_m ЗАМЕНИТЬ</div>
И есть JQ:
for(i = 1000; i < 10; i++) {
$('.asd').replace('ЗАМЕНИТЬ', i);
};
По логике в блоке .asd должно находиться слово "ЗАМЕНИТЬ" и меняться на число от 1000, по +1 в каждой следующей строке.
Но этот код не работает.
У меня дико подгорает.
Help me :с
replace — функция javascript'а, и она применяется на строку.
Выборка jquery через селектор всегда возвращает объект jquery, а не строку. Соответственно, чтобы применять replace к строке, нужно после выбора элемента, брать его текст внутри через text().
Также replace не поменяет текст сразу в исходном поле, он вернет лишь измененный. Поэтому, чтобы обратно записать в элемент измененный текст, нужно туда опять через text() вставить то, что ты заменяешь через replace
Ну и достать i-ый элемент можно либо с помощью nth-of-type либо eq - на выбор.
var start = 5;
var end = 10;
//var length = $('.asd').length;
for(i = start; i < end + 1; i++) {
var el = $( ".asd:nth-of-type(" + i +")" ); // var el = $('.asd').eq(i);
el.text(el.text().replace('ЗАМЕНИТЬ', i));
};
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="asd">#define spl_b_bab_m ЗАМЕНИТЬ</div>
<div class="asd">#define spl_b_bar_m ЗАМЕНИТЬ</div>
<div class="asd">#define spl_b_mab_m ЗАМЕНИТЬ</div>
<div class="asd">#define spl_b_mab_m ЗАМЕНИТЬ</div>
<div class="asd">#define spl_b_mab_m ЗАМЕНИТЬ</div>
<div class="asd">#define spl_b_mab_m ЗАМЕНИТЬ</div>
<div class="asd">#define spl_b_mab_m ЗАМЕНИТЬ</div>
<div class="asd">#define spl_b_mab_m ЗАМЕНИТЬ</div>
<div class="asd">#define spl_b_mab_m ЗАМЕНИТЬ</div>
<div class="asd">#define spl_b_mab_m ЗАМЕНИТЬ</div>
<div class="asd">#define spl_b_mab_m ЗАМЕНИТЬ</div>
<div class="asd">#define spl_b_mab_m ЗАМЕНИТЬ</div>
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости