JavaScript. Вопрос по Split

12
DY
На сайте с 11.02.2015
Offline
29
837

Доброго времени суток Уважаемые форумчане.

Пожалуйста, подскажите, помогите решить небольшую проблему:

На странице есть несколько блоков с одинаковым классом и разным внутренним содержимым

Например:


<div class="main_class">
<div class="left_box">
<p>left box text here</p>
</div>
</div>

<div class="main_class">
<div class="middle_box">
<p>middle box text here</p>
</div>
</div>

<div class="main_class">
<div class="right_box">
<p>right box text here</p>
</div>
</div>

Каким образом (используя Split), я могу заменить (например) символ " < " на " &lt; " и вывести результаты на странице в виде текста?

В данный момент проблема в том что, в результатах выводится одно и тоже столько раз, сколько блоков с необходимым классом найдено.

На выходе получается:


<div class="left_box">
<p>left box text here</p>
</div>

<div class="left_box">
<p>left box text here</p>
</div>

<div class="left_box">
<p>left box text here</p>
</div>

Вместо ожидаемого:


<div class="left_box">
<p>left box text here</p>
</div>

<div class="middle_box">
<p>middle box text here</p>
</div>

<div class="right_box">
<p>right box text here</p>
</div>

Пожалуйста, помогите решить данную проблему!

Может быть знатоки подскажут другой (отличный от Split) метод ... какой нибудь replace или еще чего нибудь :)

Заранее благодарен всем откликнувшимся!

Большое спасибо!

S
На сайте с 30.09.2016
Offline
469
#1

Что надо-то?

Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
Z0
На сайте с 03.09.2009
Offline
764
#2

Не очень понятно что вам нужно...

str.split("<").join("&lt; "); не работает разве?

DY
На сайте с 11.02.2015
Offline
29
#3
Sitealert:
Что надо-то?

Мне казалось я в полной мере описал свой вопрос, но похоже нет :)

- > Требуется заменить определенные символы по всех блоках с классом "main_class" и вывести полученное содержимое.

Z0
На сайте с 03.09.2009
Offline
764
#4
dmYoite:
Мне казалось я в полной мере описал свой вопрос, но похоже нет :)
- > Требуется заменить определенные символы по всех блоках с классом "main_class" и вывести полученное содержимое.

Так вы перебераете элементы то?

S
На сайте с 30.09.2016
Offline
469
#5
dmYoite:
Требуется заменить определенные символы по всех блоках с классом "main_class" и вывести полученное содержимое.

С какой целью и куда вывести?

MT
На сайте с 17.01.2017
Offline
22
#6


$('.main_class').each(function() {
var html = $(this).html().replace(/</g, '&lt;');
console.log(html);
});
DY
На сайте с 11.02.2015
Offline
29
#7
MikeTheRaven:

$('.main_class').each(function() {
var html = $(this).html().replace(/</g, '&lt;');
console.log(html);
});

В консоль выводит все просто шикарно, но вот вывести результат на странице адекватно не получается, содержимое дублируется.

Z0
На сайте с 03.09.2009
Offline
764
#8
dmYoite:
В консоль выводит все просто шикарно, но вот вывести результат на странице адекватно не получается, содержимое дублируется.

А как вы вставляете и куда?



$('.main_class').each(function() {
var html = $(this).html().replace(/</g, '&lt;');
$('.somedivclass').append(html);
});
DY
На сайте с 11.02.2015
Offline
29
#9
ziliboba0213:
А как вы вставляете и куда?


$('.main_class').each(function() {
var html = $(this).html().replace(/</g, '&lt;');
$('.somedivclass').append(html);
});

Вставлял обычным:


$('.main_class').html(html);

Уже совсем запустался ...

S
На сайте с 30.09.2016
Offline
469
#10
dmYoite:
Уже совсем запустался ...

Потому что прежде, чем что-то делать, надо определиться с целями и задачами

Sitealert:
С какой целью и куда вывести?
12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий