2015-03-18 111 views
0

我有一个javascript,它是动态生成下面的html。我想要所有列表元素的这两个下拉列表。这里只发生在最后一个列表元素。jquery append在我的应用程序中无法正常工作

<ul id="drivernvehicle"> 
    <li> 
     <div class="form-group" id="1"></div>1.</li> 
    <li> 
     <div class="form-group" id="2"></div>2.</li> 
    <li> 
     <div class="form-group" id="3"></div>3.</li> 
    <li> 
     <div class="form-group" id="4"></div>4. 
     <select class="form-control input-lg required"> 
      <option value="M" selected="selected">&lt;--select Driver--&gt;</option> 
      <option value="25">25</option> 
     </select> 
     <select class="form-control input-lg required"> 
      <option value="N" selected="selected">&lt;--select Vehicle--&gt;</option> 
      <option value="23">23</option> 
     </select> 
    </li> 
</ul> 

JS

$('#drivernvehicle').empty(); 
var i = $('#noOfVehicle').val(); 
var j; 
var temp; 
var items = []; 
for (j = 0; j < i; j++) { 
    temp = j + 1; 

    //var selectDiv = selectDiv + temp; 
    var selectDiv = $("<li><div class=\"form-group\" id=\"" + temp + "\"></div></li>"); 
    selectDiv.append(temp + ". ") 
      .append(driverSelectBox) 
      .append(vehicleSelectBox); 
    items.push(selectDiv); 
} 
$('ul#drivernvehicle').append(items); 

的JavaScript低于生成上述HTML。这里的“driverSelectBox”和“vehicleSelectBox”是两个已经动态创建的下拉菜单。

+0

你试过'$('ul#drivernvehicle li')。append(items);'? – Mottie 2015-03-18 21:53:23

+0

可以包含'driverSelectBox','vehicleSelectBox''js','html'? – guest271314 2015-03-18 21:57:36

+0

'#noOfVehicle'不存在? – lshettyl 2015-03-18 22:04:12

回答

0

您需要显示某些内容。

这里有一个的jsfiddle:http://jsfiddle.net/t8jo77Le/

我硬编码/删除您未能包括的东西。

我加入了 '你好' 在这里:

$("<li><div class=\"form-group\" id=\"" + temp + "\">Hello</div></li>");

没有它,它不会显示。

+0

不,对于字符串值作为李项目它正在工作,但不是对象。无论如何,我发现解决方案只需克隆两个选择框,否则它无法工作。所以现在我改变了下面两行,它只是起作用.append(driverSelectBox.clone()) \t \t \t \t \t .append(vehicleSelectBox.clone());但非常感谢你的回答。 – Prabir 2015-03-19 04:00:53

相关问题