taskcontent += '<li data-floor="'+OuTaskList[i].floor+'" data-target="floor'+OuTaskList[i].floor+'-5" data-task_id = '+ OuTaskList[i].task_id+' data-rowguid = '+OuTaskList[i].rowguid+'><a><href="javascript:;">'+ OuTaskList[i].taskname+ '</a> </li>';
在js拼接中 如果在一条记录中要拼接多个data-target 'OuTaskList[i].floor'-'OuTaskList[i].target' 前面'OuTaskList[i].floor'已经写好,后的'OuTaskList[i].target' 是后台传来的一个<List> 一条记录中有多个target 不知道怎么塞进去。。
问题已经解决,谢谢大家蛤
考虑用json工具类,从后台把结果集直接转成json?这样拼很麻烦的而且容易出错
JSON.stringify转为json字符串,注意替换双引号为",要不属性会不闭合
taskcontent += '<li data-floor="'+OuTaskList[i].floor+'" data-target="floor'+OuTaskList[i].floor+'-5-'+JSON.stringify(OuTaskList[i].target).replace(/"/g,'"')+'" data-task_id = '+ OuTaskList[i].task_id+' data-rowguid = '+OuTaskList[i].rowguid+'><a><href="javascript:;">'+ OuTaskList[i].taskname+ '</a> </li>';
把结果集直接转成json?这样拼很麻烦的而且容易出错
你是想知道怎么把list放进表格吧。用for循环啊。知道jstl标签么。你百度一下js的c:forEach使用方法,这里没时间给写例子。提供一段我已经存在的代码,循环给列加数据。
/c:forEach
taskcontent += '
'+ OuTaskList[i].taskname+ ' '; JSON.stringify转为json字符串,注意替换双引号为",要不属性会不闭合
taskcontent += '<li data-floor="'+OuTaskList[i].floor+'" data-target="floor'+OuTaskList[i].floor+'-5-'+JSON.stringify(OuTaskList[i].target).replace(/"/g,'"')+'" data-task_id = '+ OuTaskList[i].task_id+' data-rowguid = '+OuTaskList[i].rowguid+'><a><href="javascript:;">'+ OuTaskList[i].taskname+ '</a> </li>';
说的有点没看懂,但是js若果不是拼装的话,可以先输出,然后利用js再赋值
这是前台拼接好的