87,993
社区成员
发帖
与我相关
我的任务
分享
<c:forEach items="${printList }" var="p">
<div>
<table class="table_list" >
<tr>
<td width="12%" nowrap="nowrap" class="td_css head_td">姓名</td>
<td width="12%" nowrap="nowrap" class="td_css" >${p.userName }</td>
.........
.........
</table>
<script type="text/javascript">
$(document).ready(function() {
var arr = "${p.userPayType}".split(",");
var arr1 = "${p.userPayFund}".split(",");
var flag = 1;
n:for(var i = 0;i<arr.length;i++){
for(var j = i+1;j<arr.length;j++){
if(arr[i]==arr[j]){
continue n;
}
}
$('script').eq(-1).parent().find('.table_list').find('tr').eq(flag).find('td').eq(-2).append(arr[i]);
$('script').eq(-1).parent().find('.table_list').find('tr').eq(flag).find('td').eq(-1).append(arr1[i]);
flag++;
}
})
</script>
</div>
</c:forEach>
用onload?onload好像是加载完页面所有元素才执行?哈哈,所以怎么让代码在全局环境下随页面边解析边执行?[/quote]
<c:forEach items="${printList }" var="p">
<div>
<table class="table_list" >
<tr>
<td width="12%" nowrap="nowrap" class="td_css head_td">姓名</td>
<td width="12%" nowrap="nowrap" class="td_css" >${p.userName }</td>
.........
.........
</table>
<script type="text/javascript">
(function() {
var arr = "${p.userPayType}".split(",");
var arr1 = "${p.userPayFund}".split(",");
var flag = 1;
n:for(var i = 0;i<arr.length;i++){
for(var j = i+1;j<arr.length;j++){
if(arr[i]==arr[j]){
continue n;
}
}
$('script').eq(-1).parent().find('.table_list').find('tr').eq(flag).find('td').eq(-2).append(arr[i]);
$('script').eq(-1).parent().find('.table_list').find('tr').eq(flag).find('td').eq(-1).append(arr1[i]);
flag++;
}
})();
</script>
</div>
</c:forEach>
用onload?onload好像是加载完页面所有元素才执行?哈哈,所以怎么让代码在全局环境下随页面边解析边执行?
刚刚也用类似方式解决,没办法获取当前<script>标签对象吗?
<c:forEach items="${printList }" var="p">
<div>
<table class="table_list" >
<tr>
<td width="12%" nowrap="nowrap" class="td_css head_td">姓名</td>
<td width="12%" nowrap="nowrap" class="td_css" >${p.userName }</td>
.........
.........
</table>
<script type="text/javascript" flag="${p.id}">
$(document).ready(function() {
var sign="${p.id}";
var arr = "${p.userPayType}".split(",");
var arr1 = "${p.userPayFund}".split(",");
var flag = 1;
n:for(var i = 0;i<arr.length;i++){
for(var j = i+1;j<arr.length;j++){
if(arr[i]==arr[j]){
continue n;
}
}
var thisscript=document.querySelector('script[flag="${p.id}"]');
thisscript.parent().find('.table_list').find('tr').eq(flag).find('td').eq(-2).append(arr[i]);
thisscript.parent().find('.table_list').find('tr').eq(flag).find('td').eq(-1).append(arr1[i]);
flag++;
}
})
</script>
</div>
</c:forEach>