js中可能会用到动态追加元素,可能数据也是从后台传过来的,当然有两种思路,
1.在后台拼装好直接返回;
2.在前台js里面拼装,
如果拼装大量的html时可能单双引号就容易出问题;那么如何解决呢?最近遇到了这个问题,就做一下总结.
可以一句一句的拼装.
注意点:html元素属性全部用 双引号 字符串用单引号
var htmlline='<tr id="row'+obj.idArr+'">';
htmlline +='<td style="text-align: left;padding-bottom:0px;">';
htmlline +='<div id="" style="float:left;">';
htmlline +='<div id="tdone_b_'+obj.idArr+'" style="float:left">';
htmlline +='<div id="img_add_1" class="left closeImg" onclick="group.add_cate('+obj.idArr+')"></div>';
htmlline +='</div>';
htmlline +='<div id="" style="float:left">'+ formData.group_name +'</div>';
htmlline +='</div>';
htmlline +='</td>';
htmlline +='<td class="tal" style="padding-bottom:0px;text-align: center;">'+ formData.sort +'</td>';
htmlline +='<td style="text-align: center;padding-bottom:0px;">';
htmlline +='<div class="childCategory" style="margin-left: 46px;">';
htmlline +=' <a onclick="group.add(\'b\','+obj.idArr+')" href="javascript: void(0)">添加子分组</a>';
htmlline +=' <a onclick="group.edit('+obj.idArr+')" href="javascript: void(0)">修改</a>';
htmlline +=' <a onclick="group.dele(\'delp\','+obj.idArr+')" href="javascript: void(0)">删除</a>';
htmlline +=' <a onclick="group.useConfirm(1,'+obj.idArr+')" href="javascript: void(0)">启用</a>';
htmlline +='</div>';
htmlline +='</td>';
htmlline +='</tr>';
htmlline +=' <a onclick="group.dele(\'delp\','+obj.idArr+')" href="javascript: void(0)">删除</a>';
onclick中函数用一个参数为字符串,所以要加下转义字符
这样拼装的看起来较整齐,写起来费时.