Как объединить 2+ метода преобразования текста

181
22 августа 2018, 16:20

Надо бы, чтобы одновременно пробелы превращались в <br>, и первая буква становилась заглавная.

$(this).html(s.charAt(0).toUpperCase()+s.substr(1).toLowerCase());
$(this).html(s.replace(/\s/g, "<br>")); 

По одиночке работают. Если оба в функции - срабатывает только последний.

https://jsfiddle.net/Nata_Hamster/ywk85hpq/1/

Answer 1

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

s = s.charAt(0).toUpperCase()+s.substr(1).toLowerCase();
$(this).html(s.replace(/\s/g, "<br>"));

ну или просто в одну строку всё сделать

$(this).html(s.charAt(0).toUpperCase()+s.substr(1).toLowerCase().replace(/\s/g, "<br>"));
Answer 2

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

$(this) 
  .html( 
    (s.charAt(0).toUpperCase()+s.substr(1).toLowerCase()) 
    .replace(/\s/g, "<br>") 
  );

READ ALSO
Как поставить задержку на наведение JQuery?

Как поставить задержку на наведение JQuery?

Делаю выпадающие менюПробовал уже добавлять setTimeout, но он вообще перестает работать

182
Не могу установить слайдер (PgwSlider) на сайт

Не могу установить слайдер (PgwSlider) на сайт

Помогите пожалуйста установить слайдер на сайт

146
как удалить элемент со списка

как удалить элемент со списка

после добавления элементов в список, при клике на какой-то элемент нужно удалить его

266
Валидация теста с radio кнопками

Валидация теста с radio кнопками

Как сделать правильно валидацию на отмечание да/нет, чтобы если пользователь не отметил один из вариантов ему это сообщилоРазметку страницы...

154