Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как в середину текстового поля из нескольких слов вставить значение другого поля? (https://javascript.ru/forum/misc/82172-kak-v-seredinu-tekstovogo-polya-iz-neskolkikh-slov-vstavit-znachenie-drugogo-polya.html)

AmigoArrigo 26.03.2021 20:26

Как в середину текстового поля из нескольких слов вставить значение другого поля?
 
Приветствую коллективный разум сообщества.

Подскажите, пожалуйста, как в середину текстового поля из нескольких слов вставить значение другого поля?

Есть, к примеру, поле name_category и есть описание субъекта этой категории в поле about_subject, которое обще многих, только в середину описания субъекта нужно внедрить слово, содержащее название этой категории.

Типа есть значение наименования категории в поле name_cat "моделирование", а в описании субъекта типа "{моделирование или /конструирование или /проектирование} применяется так-то и так-то".

Хелп плиз

рони 26.03.2021 20:54

AmigoArrigo,
что на входе, что на выходе?

Detrimon 27.03.2021 16:38

Цитата:

Сообщение от AmigoArrigo (Сообщение 534942)
Приветствую коллективный разум сообщества.

Подскажите, пожалуйста, как в середину текстового поля из нескольких слов вставить значение другого поля?

Есть, к примеру, поле name_category и есть описание субъекта этой категории в поле about_subject, которое обще многих, только в середину описания субъекта нужно внедрить слово, содержащее название этой категории.

Типа есть значение наименования категории в поле name_cat "моделирование", а в описании субъекта типа "{моделирование или /конструирование или /проектирование} применяется так-то и так-то".

Хелп плиз

Как-то сумбурно задача описана, на мой взгляд. Вначале говорится про то, что нужно вставить в середину. Для разработчика это означает, что надо строку разбить пополам и вставить в середину строки другую строку. Но мне кажется, вы все же не этого хотели :)

Скорее всего ваша задача сводится к тому, что есть строка:

let subject = "Бла бла бла {category} и что-то еще"

и вам вместо {category} нужно вставлять другие значения, например: "Моделирование" или "Конструирование", чтобы получилось:
"Бла бла бла Моделирование и что-то еще"

Если так, то можно так написать:
let category = "Моделирование";
let subject = "Бла бла бла {category} и что-то еще";
subject.replace("{category}", category);

AmigoArrigo 27.03.2021 21:54

Ок, еще раз:

В одной базе есть 2 или более полей.
В записях поля с именем, предположим, name_cat, есть названия категорий, предположим, "моделирование", "конструирование", проектирование" и т.д.
В каждой из записей есть поле с именем, предположим, about_subj, где есть текст типа "{name_cat} применяется так-то и так-то".
Описание about_subj обще для многих полей name_cat и содержит вариативно слова типа "моделирование", "конструирование", проектирование" и т.д. и чтобы в описание about_subj индивидуально не вставлять слова описания, нужно вставить в текст описания содержимое поля name_cat.
Идеально бы прямо в содержимое поля about_subj вставить значения поля name_cat из этойц же записи, потому как при выводе на экран этого сделать уже не получится.

рони 27.03.2021 22:16

AmigoArrigo,
:-?

AmigoArrigo 29.03.2021 17:50

Цитата:

Сообщение от Detrimon (Сообщение 534954)
Как-то сумбурно задача описана, на мой взгляд. Вначале говорится про то, что нужно вставить в середину. Для разработчика это означает, что надо строку разбить пополам и вставить в середину строки другую строку. Но мне кажется, вы все же не этого хотели :)

Скорее всего ваша задача сводится к тому, что есть строка:

let subject = "Бла бла бла {category} и что-то еще"

и вам вместо {category} нужно вставлять другие значения, например: "Моделирование" или "Конструирование", чтобы получилось:
"Бла бла бла Моделирование и что-то еще"

Если так, то можно так написать:
let category = "Моделирование";
let subject = "Бла бла бла {category} и что-то еще";
subject.replace("{category}", category);


Вы все верно поняли. Надо в середину вставить. Только не при выводе, а еще в базе


Часовой пояс GMT +3, время: 21:03.