dqba94394 2018-03-08 00:59
浏览 57
已采纳

如何使用javascript在下拉列表中显示下拉菜单项?

Below is my html:

 <div class="row">
    <div class="col-lg-11">
         <ul  class="list-unstyled" id="slider">
         </ul>
    </div>                        
 </div>

Below is my javascript:

var locationbegin="<div class='form-group'><label>Location</label><select  
class='form-control' id='location'><option>test</option>";
$("#slider").append(locationbegin); 

var locationoptions = "<option>tester</option>";
$("#slider").append(locationoptions);

var locationend="</select> </div>";
$("#slider").append(locationend);

Below is the output:

output

The problem is the tester comes out of the location dropdown. I'm not sure where i'm going wrong. You can also use http://rendera.herokuapp.com/ to render the code.

Edit: The reason the javascript is separated is because of some other javascript code in between in the code.

  • 写回答

2条回答 默认 最新

  • drc4925 2018-03-08 01:03
    关注

    You are going wrong in not using proper HTML. You have to close the tags or the browser does this for you whenever it computes it should. append first turns your HTML into NodeList (which results in the select and div being closed) and afterwards i is appended to the slider. Now, if you append further options onto that HTML structure, you are ffectivly appending thos behind the closed div.

    You should keep a reference to the select to be able to add more optinos whenever you like:

    a) create the surrounding markup:

    var myFormField = $('<div class="form-group"><label>Location</label><select class="form-control" id="location"><option>test</option></select></div>')
    

    b) find the select and store it to a variable:

    var mySelect = myFormField.find('#location');
    

    c) add as many options as you like

    mySelect.append('<option>Value 2</option>');
    mySelect.append('<option>Value 3</option>');
    mySelect.append('<option>Value 4</option>');
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部