Показывать данные, введенные в форме, перед отправкой формы

У меня есть форма, где есть несколько входных данных, которые должны быть введены пользователем, но перед отправкой формы я хочу показать пользователям, как их i / p будет отображаться.

Моя страница разделена на 2 части, одна часть содержит форму и 2 содержит макет

<form class="form-horizontal" enctype="multipart/form-data" role="form" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method="POST"> <div class="form-group"> <label for="input01" class="col-sm-2 control-label">First Name</label> <div class="col-sm-4"> <input type="text" class="form-control" name="firstname" id="input01"> </div> </div> <div class="form-group"> <label for="input01" class="col-sm-2 control-label">Last Name</label> <div class="col-sm-4"> <input type="text" class="form-control" name="lastname" id="input02"> </div> </div> <div class="form-group"> <label for="input01" class="col-sm-2 control-label">Location</label> <div class="col-sm-4"> <input type="text" class="form-control" name="location" id="input03"> </div> </div> </form> 

Теперь место, которое я хочу отобразить выше, будет отличаться от div, и это нужно сделать до отправки кнопки, например:

Я хочу чтобы

 when user types firstname, at the same instance it should be displayed under <div id="firstname"></div>, when user types lastname , at the same instance it should be displayed under <div id="lastname "></div>, when user types location, at the same instance it should be displayed under <div id="location"></div>, 

В настоящее время код, который у меня есть, работает только для одного входа

 <input type="text" value=""> <p></p> $( "input" ) .keyup(function() { var value = $( this ).val(); $( "p" ).text( value ); }) .keyup(); 

но я хочу что-то, что может работать для любого количества ввода, как описано в приведенном выше примере. Может кто-нибудь, пожалуйста, помогите мне с этим

Solutions Collecting From Web of "Показывать данные, введенные в форме, перед отправкой формы"

Вы можете добавить специальный атрибут data к своему input чтобы уточнить, куда должен быть помещен введенный текст. Вы можете называть его так, как вы хотите, префикс data- – назовем его data-view-id . Затем вы добавляете этот атрибут к своему input :

  <input type="text" class="form-control" name="location" id="input01" data-view-id="#location"> 

Далее – измените js:

 $( "input" ) .keyup(function() { var value = $( this ).val(), dataViewId = $( this ).data( "view-id" ); // get your data-attribute value // use this value as a selector: $( dataViewId ).text( value ); }) .keyup(); 

Еще дальше – если идентификаторы div, где вы хотите разместить текст, совпадают с name входов – тогда вам даже не нужен атрибут data :

 $( "input" ) .keyup(function() { var value = $( this ).val(), dataViewId = $( this ).attr( "name" ); // get your value using `name` // use this value as a selector: $( "#" + dataViewId ).text( value ); }) .keyup(); 

И к слову – свойство id должно быть уникальным на странице. Таким образом, незаконно иметь несколько элементов с одинаковым id , как у вас в настоящее время.