我有这个div有一个表,我想根据场景动态地向该表添加一行。如何用jquery做到这一点?
<div style="margin-bottom: 4px;" id="div_outgoing_call_dates_rows">
<table id="tbl_dynamic_call_dates">
<tbody><tr><td>Appointment date</td><td>Client time window</td></tr>
<tr id="client_app_0"><td>04/10/2013</td><td><select name="CSSAtapsClient[client_time_window_arr][0]" id="client_time_window_0">undefined<option value="5702">07am - 10am</option><option value="5703">10am - 1pm</option><option value="5704">12pm - 3pm</option><option value="5705">03pm - 06pm</option><option value="5706">06pm - 09pm</option><option value="5707">07pm - 10pm</option><option value="5708">09pm - 12am</option><option value="5709">12am - 7am</option></select></td>
</tr>
</tbody>
</table>
</div>
我尝试了这个并且它在最后一行工作,而是在div中添加并且旧内容被清除。
$("#div_outgoing_call_dates_rows").append(dynamicRow);
欣赏早期回应。
小提琴Here
编辑2
$.each(array,function(i){
if($("#client_app_tr_" + array[i]).length == 0) {
console.log("yes not exisit so adding a new one");
dynamicRow += "<tr id=\'client_app_tr_" + array[i] + "\'><td>" + array[i] + "</td><td>" + "<select id=\'client_time_window_" + i + "\' name=\'CSSAtapsClient[client_time_window_arr][" + i + "]\'>" + dynamicDD + "</select>" + "</td></tr>";
}
});
我有这样的感觉 - &gt; client_app_tr_07 / 10/2013,client_app_tr_08 / 10/2013,client_app_tr_09 / 10/2013 ...所以如果那个id不存在,我需要添加一个新行。它不起作用,因为我检查它的方式总是进入这个循环。 if($(“#client_app_tr_”+ array [i])。length == 0){}
编辑3
这似乎也没有用。我必须遗漏一些东西,或者没有办法检查天气中是否有一个元素id存在于jquery中?
if($("#client_app_tr_" + array[i])[0] !== true) {}
答案 0 :(得分:1)
div_outgoing_call_dates_rows
是div
元素,您需要将该行附加到table
内的div
,因此请使用descendant-selector
$("#div_outgoing_call_dates_rows table").append(dynamicRow);
答案 1 :(得分:1)
您必须选择table
才能附加动态行,因此请更改选择器:
$("#div_outgoing_call_dates_rows table").append(dynamicRow);
答案 2 :(得分:1)
试试这个,这对你有帮助。
var old_item =$('#div_outgoing_call_dates_rows').html();
old_item=old_item+'New Content';
$('#div_outgoing_call_dates_rows').append(old_item);
小提琴here。