2017-03-02 3 views
0

Ich versuche, die Daten aus der Datenbank zu bekommen und es in Auswahl-Option über Dropdown-Menü anzuzeigen. Ich erhalte die Daten auch auf der Java-Script-Seite korrekt. Aber es wird nicht im Dropdown-Menü von HTML angezeigt.Javascript HTML wählen Drop-down

HTML-Code:

<td>Organization Name:</td> 
<td> 
    <select id="orgname" name="Oname" onload="getOrganizationname();"> 
     <option selected disabled value=" ">Choose your Organization</option> 

     <!-- <option value="1" >xyz</option> 
     <option value="2">Brocade</option> 
     <option value="3">Citrix</option> --> 
    </select> 
</td> 

Javascript-Code: function getOrganizationname() {

$.get('getOrganizationname.jsp',function(data) 
{ 
    document.getElementById("orgname").innerHTML= data; 
     alert(data); 
    } 
    ); 
} 

Onload ich diese msg in alert immer (zu debuggen versuchen)

Dies ist die Informations aus der Datenbank:

<option value="Infosys"></option> 
<option value="Akamai"></option> 
<option value="Brocade"></option> 
<option value="XYZ"></option> 
<option value="XYZ1"></option> 
<option value="XYZ2"></option> 
+0

onload ich bekomme dies in Alarm msg (versucht zu debuggen) Das ist Info. aus Datenbank: user1955409

+0

Also watever daten ich bekomme als wert, ich will es zwischen der option wie sein: Infosys ...... Wie dieser – user1955409

+0

Sie verwenden '$ .get' scheint jQuery zu sein. Ist das richtig? Wenn ja, werde ich Ihre Frage als solche markieren ... – War10ck

Antwort

1

Sie Gebrauch verwenden:

$(document).ready(function(){ 
    $.get('getOrganizationname.jsp',function(data){ 
     $("#orgname").html(data); 
    }); 
}) 

So, jetzt Ihr Code wird:

<td>Organization Name:</td> 
<td> 
    <select id="orgname" name="Oname"> 
     <option selected disabled value=" ">Choose your Organization</option> 
    </select> 
</td> 
<script> 
$(document).ready(function(){ 
    $.get('getOrganizationname.jsp',function(data){ 
     $("#orgname").html(data); 
    }); 
}); 
</script> 
0

Nachdem Sie Daten einsehen und setzen Sie ihn, sieht Ihre html wie folgt aussieht? http://codepen.io/anon/pen/ryLaxV

Wenn ja, das Problem ist, dass Sie keinen Text in Ihren Optionen haben.

<option value="Infosys"></option> 

sollte

<option value="Infosys">Infosys</option> 

Wie werden?

var jData = $(data) // create jquery wrapped dom elements 

// now iterate them and add text from values 
jData.each(function() { 
    var currentElement = $(this) // that's jquery way... 
    var value = currentElement.val() 
    currentElement.text(value) 
}) 
// finally append it to the select element 
$('#orgname').html(jData) 

Bedenken Sie auch die Anregung $(document).ready von Shakti Phartiyal zu verwenden.

Und bitte verwenden Sie console.log(data) zum Debuggen. Um die Konsole zu sehen - klicken Sie mit der rechten Maustaste auf Ihre Seite -> inspect element.

P.S. es wäre viel besser, wenn du rohe daten vom server bekommst, ich meine ein json oder sowas! :)