2015-01-22 2 views
0

Я создаю форму, и она просит кандидатов опубликовать информацию об их предыдущей истории образования - вот скриншоты формы и прилагаемого к ним кода!заполнить выпадающие списки с данными из базы данных mysql

http://i58.tinypic.com/ege104.png

http://i59.tinypic.com/fxuf5w.png

Вот мой Javascript код:

<script> 
function removeFields1(){ 
//var container1 = document.getElementById("container1"); 
//container1.removeChild(input); 


} 
    function addFields1(){ 
     var container = document.getElementById("container1"); 

     var option = document.createElement("select"); //? how do I fix this up 


     //option.text = "Kiwi"; 
     //container.add(option); 
     container.appendChild(option);//? how do I fix this up 


     container.appendChild(document.createTextNode("Address: "));//Address form 

     var input = document.createElement("input"); 
     input.type = "text"; 
     input.id = "instaddress"; 
     input.name = "instaddress"; 
     input.size = 20; 
     input.maxlenth = 20; 
     container.appendChild(input); 

     container.appendChild(document.createTextNode("From: ")); // which year the person started   
     var from = document.createElement("input");     // studying in that institution 
     from.type = "text"; 
     from.id = "from"; 
     from.name = "from"; 
     from.size = 4; 
     from.maxlenth = 4; 
     container.appendChild(from); 

     container.appendChild(document.createTextNode("To: "));  // which year the person finished 
     var to = document.createElement("input");     // studying in that institution 
     to.type = "text"; 
     to.id = "to"; 
     to.name = "to"; 
     to.size = 4; 
     to.maxlenth = 4; 
     container.appendChild(to); 

     container.appendChild(document.createTextNode(" Did You Graduate?: Yes")); // radio buttons whether someone graduated or not   

     var grad = document.createElement("input"); 
     grad.type = "radio"; 
     grad.id = "graduate"; 
     grad.name = "graduate"; 
     grad.value = "yes"; //yes value for radio button 
     container.appendChild(grad); 

     container.appendChild(document.createTextNode(" No ")); 
     var grad1 = document.createElement("input"); 
     grad1.type = "radio"; 
     grad1.id = "graduate"; 
     grad.value = "no"; //no value for radio button 
     container.appendChild(grad1); 

     container.appendChild(document.createTextNode(" Certificate: ")); 

     var certificate = document.createElement("input"); 
     certificate.type = "text"; 
     certificate.id = "certificate"; 
     certificate.name = "certificate"; 
     input.size = 25; 
     input.maxlenth = 25; 
     container.appendChild(certificate); 

     var addInstitution = document.getElementById(" Add"); 
     var removeInstitution = document.getElementById("Remove"); 
    // container.removeChild(addInstitution); 

     //create and insert input/text 

     //create and insert button 
     addInstitution = document.createElement("a"); 
     addInstitution.id="Add" 
     addInstitution.href="#"; 
     addInstitution.text="Add"; 
     addInstitution.onclick=function(){addFields1();}; 

     removeInstitution = document.createElement("a"); 
     removeInstitution.id="Remove" 
     removeInstitution.href="#"; 
     removeInstitution.text=" Remove"; 
     container.appendChild(addInstitution); 
     container.appendChild(removeInstitution); 
     //removeInstitution.onclick=function(){removeFields1();}; 
     // 
     container.appendChild(document.createElement("br")); 

    } 

</script> 

Вот поля формы, а также:

<body> 
     <form> 

      <div id="container1"> 
     <select name="institution" id="institution"> 
<option <?php if(isset($_POST['institution'])) { echo $_POST['institution']; } ?>>Select Institution</option> 
<?php 
$sql1a = "SELECT * FROM institution ORDER BY institution asc"; 
$smt1a = $dbs->prepare($sql1a); 
$smt1a -> execute(); 
while($row1a=$smt1a->fetch(PDO::FETCH_ASSOC)) 
{ 
if($row1a['institution']==$_GET['id3']) 
echo("<option selected value=$row1a[institution]>$row1a[institution]</option>"); 
else 
echo("<option value=$row1a[institution]>$row1a[institution]</option>"); 
} 
?> 
</select> 
Address: <input size="20" type="text" id="instaddress" name="instaddress" maxlength="20" size="20"> From:<input type="text" id="from" name="from" size="4" > To: <input type="text" id="to" name="to" size="4"> 
Did You Graduate?: Yes<input type="radio" onclick="checkRadio()" id="graduate" name="graduate" value="yes"> No 
<input type="radio" onclick="checkRadio()" id="graduate" name="graduate" value="no"> Certificate: <input size="20" type="text" id="certificate" name="certificate" maxlength="25" size="25"> 

       <a href="#" id="Add" onclick="addFields1()">Add </a><br> 
      </div> 

     </form> 
    </body> 

Как я могу создать раскрывающийся выберите меню для раздела Javascript, когда я нажимаю addFields1()?

Ниже приведен код PHP для выпадающего меню, в меню которого хранятся данные из базы данных MySQL. Что будет правильным

<option <?php if(isset($_POST['institution'])) { echo $_POST['institution']; } ?>>Select Institution</option> 
<?php 
$sql1a = "SELECT * FROM institution ORDER BY institution asc"; 
$smt1a = $dbs->prepare($sql1a); 
$smt1a -> execute(); 
while($row1a=$smt1a->fetch(PDO::FETCH_ASSOC)) 
{ 
if($row1a['institution']==$_GET['id3']) 
echo("<option selected value=$row1a[institution]>$row1a[institution]</option>"); 
else 
echo("<option value=$row1a[institution]>$row1a[institution]</option>"); 
} 
?> 
</select> 

Может ли кто-нибудь из вас помочь мне с исправлением кода Javascript?

Вот фрагмент кода, который должен быть устранен, так что я могу использовать функции Javascript для выпадающего списка меню каждый раз, когда «Добавить» ссылка нажата:

var option = document.createElement("select"); //? how do I fix this up 

var option = document.createElement("select"); //? how do I fix this up 
//option.text = "Kiwi"; 
//container.add(option); 
container.appendChild(option);//? how do I fix this up 
+0

Вы должны использовать шаблонизатор, или по крайней мере самостоятельно шаблонов ... код, как это хоррор обзор/сохранить –

ответ

0

я думаю, что вы хотите сделать это:

var select = document.createElement("select"); 

var option = document.createElement("option"); 
option.value = "Kiwi"; 
option.innerHTML = "Kiwi"; 

select.appendChild(option); 

.... но производить эти длинные JavaScript функции не является хорошим стиль программирования ... функция должна состоять не более чем 20 до 30 строк кода ... так вы должны использовать один из них:

http://www.sitepoint.com/10-javascript-jquery-templates-engines/

или загрузить всю линию через AJAX ...

+0

какие я бы сделал, если бы захотел вывести его из базы данных? –

+0

Что делать, если я хочу получить значения из базы данных mysql? как я это сделаю? –

+0

Mr. Manhattan ... его не работает ... –

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