早上好,
我遇到以下代码的问题
<html>
<head>
<title>highlight date</title>
<style>
.row {
background-color: Yellow;
color:blue;
}
</style>
<script type="text/javascript">
</script>
<script src="jquery-1.3.2.min.js" type="text/javascript"></script>
<script language="javascript">
var currentTime = new Date();
var day = currentTime.getDate();
var month = currentTime.getMonth() + 1;
var year = currentTime.getFullYear();
var review = day + "/" + month + "/" + year;
</script>
<script language="javascript">
$(document).ready(function() {
$('#names td:contains(xxxx)').parent().addClass('row');
});
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<table id="names">
<tbody>
<tr>
<td>1</td>
<td>review</td>
</tr>
<tr>
<td>2</td>
<td>Satheesh</td>
</tr>
<tr>
<td>3</td>
<td>08/10/2010</td>
</tr>
<tr>
<td>4</td>
<td>11/10/2010</td>
</tr>
<tr>
<td>5</td>
<td>xyz</td>
</tr>
</tbody>
</table>
</div>
</form>
<h4>It was
<script type="text/javascript">document.write(review)</script></h4>
</body>
</html>
我得到它来突出显示一个字符串,但出于某种原因,当我尝试将变量“review”声明为我想要搜索和突出显示时,它似乎找到的只是单词review。有人可以帮我这个吗?它开始做我的头了。
三江源
答案 0 :(得分:3)
您没有提供足够的信息。
我的通灵调试技巧告诉我你需要把它改成
$('#names td:contains(' + someVariable + ')')
答案 1 :(得分:1)
我猜你在尝试
$('#names td:contains(review)').parent().addClass('row');
你应该连接你的变量:
$('#names td:contains(' + review + ')').parent().addClass('row');
会将'#names td:contains('
加入您的变量的值,然后加入')'
$(document).ready(function() {
function parseDate(dateString)
{
//You should address this function to be more robust
return new Date(Date.parse(dateString));
}
$('#names tr').each(function(index)
{
var row = $(this);
if (parseDate(elem.find("td:eq(1)").text()) < new Date())
row.addClass('row');
});
});
这将获取每一行并迭代它们。它获取SECOND(0-index)td的文本值,并将其解析为日期。如果此日期小于今天,则适用该类。
它不会检查数据是否是实际日期,因此您应该以某种方式添加该检查。