我有一张jsp
包含用户信息的表格,并且有一列以格式表示用户的生日yyyy-mm-dd
。我想用用户的实际年龄替换这些出生日期。所以我有简单的 JS 函数 getAge :
function getAge(dateString) {
var today = new Date();
var birthDate = new Date(dateString);
var age = today.getFullYear() - birthDate.getFullYear();
var m = today.getMonth() - birthDate.getMonth();
if (m < 0 || (m === 0 && today.getDate() < birthDate.getDate())) {
age--;
}
return age;
}
我试图在以这种方式初始化页面后运行它:
$().ready(function({
$(".age").html(getAge($(this).html()));
}));
其中.age
是一类“年龄”列。所以这就是我期望它的工作方式:
$(".age")
- 找到具有 class="age" 的单元格
$(".age").html(getAge($(this).html()));
- 用 getAge() 函数返回的值替换找到的单元格中的 html,其中 getAge 的参数是该单元格中的当前值。但它什么也没显示=(
如果我像这样使用 smthg 进行测试:
$(".age").html(getAge("1960-08-15"));
- 它工作正常,并用从 1960-08-15 计算的年龄替换所有行中的生日 =)
也许我不明白$(this)
在我的上下文中会返回什么?我确信它应该返回我刚刚用我的选择器(单元格)调用的当前元素
你能给我一个提示吗?
多谢