我问这个问题是Jquery的相对新手,
我有两张桌子: GridView1 & GridView2 非常相似,一个包含预期值,另一个包含实际值。
<div style="display: none;">
<div>
<table class="EU_DataTable" cellspacing="0" rules="all" border="1" id="GridView1" style="border-collapse:collapse;">
<tbody><tr>
<th scope="col">Day of Month</th><th scope="col">Expected Amount</th>
</tr><tr>
<td>1</td><td>R34 627,00</td>
</tr><tr>
<td>2</td><td>R72 474,00</td>
</tr><tr>
<td>3</td><td>R27 084,00</td>
</tr><tr>
<td>4</td><td>R9 268,00</td>
</tr>
</tbody></table>
</div>
</div>
我已经针对这个问题缩短了它。
然后我Jquery
运行此表GridView1
,并选择first column
作为日期,second column
作为金额。我正在尝试构建一个日历,它会说on the 1st: This was expected: R50, This was Paid: R35
(在一个列表项中)
var list = $("#thismonth");
$("#GridView1 tr:has(td)").each(function () {
var dayforLi = $(this).find("td:eq(0)");
var amountforLi = $(this).find("td:eq(1)");
list.append("<li class=cal>" + dayforLi.html() + "<p>Expected: " + amountforLi.html() + "</p></li>");
});
这为我建立了我的列表,我后来将其设为日历。我遇到的问题是访问 GridView2 列并将其添加到构建我的列表的Jquery中。我尝试了很多东西,要么破坏我的Jquery,要么将第二个表中的每个项目添加到每个列表项中:(
希望我已经用这样的方式解释了这一点,你很容易知道我想要做什么。如果没有,请让我知道,并尝试深入挖掘更好的解释。
非常感谢, 麦克
答案 0 :(得分:1)
试试这个jQuery:
var list = $("#thismonth");
$('#GridView1 tr').each(function(index){
if(index!=0) // this condition to skip tr for header i.e. containing th elements
{
var dayforLi = $(this).find("td:eq(0)").html();
var amountforLi = $(this).find("td:eq(1)").html();
var actualAmount= $('#GridView2 tr:eq('+index+')').find('td:eq(1)').html();
list.append("<li class=cal>" + dayforLi + "<p>Expected: " + amountforLi + "</p><p>Actual: " + actualAmount + "</p></li>");
}
});