Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Импорт определенных значений по id (https://javascript.ru/forum/dom-window/71656-import-opredelennykh-znachenijj-po-id.html)

Anushki 03.12.2017 23:29

Импорт определенных значений по id
 
Всем привет товарищи. Помогите пожалуйста.

Как можно сделать импорт определенных value с полей любого типа с выводом по id например уже в теге span:

http://jsfiddle.net/hw4vx3cy/16

Просто в данном случае происходит последовательный вывод.
А нужно сделать чтобы порядок можно было контролировать с помощью id или класса.

С меня + и отзыв. :)

рони 04.12.2017 00:00

Anushki,
name="tarif" id="a"
name="pack" id="a"
Цитата:

id присваивает элементу уникальный идентификатор

Anushki 04.12.2017 00:03

Цитата:

Сообщение от рони (Сообщение 471974)
Anushki,
name="tarif" id="a"
name="pack" id="a"

А как проверить id поля с id того, куда будет импортироваться?

Anushki 04.12.2017 00:04

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

рони 04.12.2017 00:10

Anushki,
не понимаю

laimas 04.12.2017 00:11

Цитата:

Сообщение от Anushki
ну или как проверить id поля инпута

А зачем вам id? И коли форма будет отправляться на сервер, а серверный язык будет РНР, то даже выбрав два флажка получите один, так как имя у флажков одинаковое - pack. Элементы формы с выводом можно связать по классу. А флажки могут быть набором, это же надо учитывать.

Anushki 04.12.2017 00:17

Этот вариант: http://jsfiddle.net/hw4vx3cy/16 предложил мне Рони.
так вот вариант идеальный!
Но при импорте происходят ошибки.

Если не заполнены предыдущие поля то значения выводятся не в том месте.

И поэтому нужно выводить не в порядке очереди а по <span id=""> например.

У меня пошаговая форма в которой люди заполняют различные поля и примерно на 3-4 шаге мне нужен импорт для того чтобы формировать договор и показывать его.

Но не все импортируемые поля выводятся в договоре некоторые нужно вывести вне договора. И поэтому последовательный импорт не подходит. Нужно как то сравнивать id поля input или selecta с id span'a например. Или каким либо образом обозначить каждый span так чтобы он выводил только определенное поле.

laimas 04.12.2017 00:21

Хотите ID, тогда дайте их SPAN, они каждый в единственном экземпляре, а элементов формы не обязательно по одному. При этом ID могут быть равны именам полей формы, связать не проблема. Кроме прочего - проверяйте флажки, это же на одноименная группа радиокнопок имеющих одно значение.

Anushki 04.12.2017 00:22

Цитата:

Сообщение от laimas (Сообщение 471981)
Хотите ID, тогда дайте их SPAN, они каждый в единственном экземпляре, а элементов формы не обязательно по одному. При этом ID могут быть равны именам полей формы, связать не проблема. Кроме прочего - проверяйте флажки, это же на одноименная группа радиокнопок имеющих одно значение.

Нужно обозначить каждый span так чтобы он выводил только определенное поле.

Закрепить к каждому input и select полю свой span. И выводить его хоть где и в любом порядке. Не обязательно в том же что и в форме.

laimas 04.12.2017 00:30

Свяжите так:

<input type="text" name="name" placeholder="Ваше ФИО"><br><br>
<input type="text" name="phone" placeholder="Телефон">
.....

<p>Заказчик: <span id="name"></span></p>
<p>Телефон: <span id="phone"></span></p>
.....


В обработчике выполните такой код:

$.each(this.elements, function(i, e) {
            console.log($('#'+e.name))
});


Видны в консоли ваши SPAN? Какая проблема?

Проблема возникнет с флажками, если как выше говорилось, а значит их именовать надо как например pack[], а в связывании убирать из имени. Если связать по имени класса, то по крайней мере этого бы не требовалось. Чем имя класса хуже ID?


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