2015-05-15 2 views
1

В принципе у меня есть функция javascript, которая позволяет пользователю добавлять формы по своему усмотрению. У меня есть пара полей ввода, и у меня нет проблем с их добавлением. Вот мой код.Добавление полей формы с использованием javascript в программе jsp?

<script> 

var counter = 1; 

function addInput(divName){ 
      var newdiv = document.createElement('div'); 
      newdiv.innerHTML =   
      "<center><br><hr width='300'>\n\ 
        Control Number: <br><input type='text' name='control_number'>\n\ 
        Date of Pull Out: <br><br><input type='date' name='pulloutdate'>\n\ 
       \n\Item Description: <br><br> <select name='des'>\n\ 
       \n\ 
        <% while(rSelectRecord.next()){ %> 
     <option value="<%=rSelectRecord.getString("item_code")%>"><%=rSelectRecord.getString("item_code")%></option> 
      <% } %> 
</center>"; 
      document.getElementById(divName).appendChild(newdiv); 
      counter++; 
} 

</script> 

Однако в моем innerHTML, значения в моем описании пункта должны быть взяты из базы данных, которую я создал. Я думал о том, чтобы делать это таким образом, где я кладу скрипт внутрь и получаю свои ценности. Это не работает.

Есть ли способ добавить формы с выборами, взятыми из базы данных, и поместить их в функцию javascript? Или есть способ, которым я мог бы создать свою форму на другой странице и просто включить ее в свой newdiv.innerHTML = "filenamehere"? Пожалуйста помоги? Благодаря!

ответ

0

То, что вы делаете, должно работать. Я думаю, что ваши скриптлеты просто добавляют невостребованные строки в строку javascript, нарушая ее. Итак, попробуйте следующее:

  \n\ 
       <% while(rSelectRecord.next()){ %>\ 
    <option value='<%=rSelectRecord.getString("item_code")%>'><%=rSelectRecord.getString("item_code")%></option>\ 
     <% } %>\ 
     \n</select>\n\ 
</center>"; 
+0

Я собираюсь попробовать это, спасибо! – user3211403

+0

Привет, я пробовал это, и он не работает. Он не добавляет больше форм, когда есть скрипт. – user3211403

+0

Если скриптлет не выдает ошибку, он должен работать. Я делаю это все время. Чтобы отладить его, попробуйте удалить все разрывы строк из инструкции 'newdiv.innerHTML ='. Все это на одной линии и балансирование котировок должно заставить ее работать. Убедитесь, что вы чередуете двойные и одинарные кавычки, если вы пытаетесь вложить (см. Обновленный ответ). – DaveS

Смежные вопросы