我试图在动态[jQuery]中添加一个下拉列表,但它不起作用。我想要以下结构:
<select id="surah_selection" style="position:relative; top:10px; left:25px">
<option id="1">Select Surah</option>
<option id="2" >Al-Baqra</option>
<option id="3">Al-Fatiha</option>
<option id="4">Al-noor</option>
<option id="5">Al-Tobah</option>
</select> <!--Surah selection ends -->
我已阅读this,但无效。
这是我尝试过的:
$('#book_selection').change(function(){
alert("changed");
var option = document.createElement("option");
option.text = 'df';
option.value = 'df';
var temp = document.createElement('select');
temp.appendChild(option);
var root = document.getElementById('book_selection');
root.appendChild(temp);
alert("done");
});
答案 0 :(得分:9)
检查波纹管小提琴。这会对你有所帮助。根据您的需要改变它们。
$('#book_selection').change(function(){
var newSelect=document.createElement('select');
var selectHTML="";
for(i=0; i<choices.length; i=i+1){
selectHTML+= "<option value='"+choices[i]+"'>"+choices[i]+"</option>";
}
newSelect.innerHTML= selectHTML;
document.getElementById('book_selection').appendChild(newSelect);
});
$(document).ready(function(){
var newSelect=document.createElement('select');
var selectHTML="";
/* for(i=0; i<choices.length; i=i+1){
selectHTML+= "<option value='"+choices[i]+"'>"+choices[i]+"</option>";
}*/
selectHTML+= "<option value='test'>test</option>";
newSelect.innerHTML= selectHTML;
document.getElementById('book_selection').appendChild(newSelect);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="book_selection"></div>
你也可以使用jquery
$('#book_selection').change(function() {
$("<select />").append($("<option>", {"value": "me", "text": "me"})).insertAfter($(this));
});
答案 1 :(得分:2)
试试这个
<select id="surah_selection" style="position:relative; top:10px; left:25px">
<option id="1">Select Surah</option>
<option id="2" >Al-Baqra</option>
<option id="3">Al-Fatiha</option>
<option id="4">Al-noor</option>
</select>
要向组合框添加新选项,您可以尝试以下jQuery
<script>
function add(){
var str="<option id='5'>Al-Tobah</option>"
$("#surah_selection").append(str);
}
</script>
通过调用此函数,新选项将添加到您的Combobox
答案 2 :(得分:0)
我假设您的HTML中某处有一个空的<div>
,并且您希望将该选择插入其中,例如:
<div class="surah_selection></div>
然后将您的选择插入div中,您可以执行此操作:
var selectSurah = '<select id="surah_selection" style="position:relative; top:10px; left:25px"><option id="1">Select Surah</option><option id="2" >Al-Baqra</option><option id="3">Al-Fatiha</option><option id="4">Al-noor</option><option id="5">Al-Tobah</option></select>';
$(".surah_selection").prepend(selectSurah);
您可以在此处查看小提琴:Fiddle