问题描述
|
我有两个文本框。第一个是日期,第二个是年龄。我有两种情况:
我知道生日,我填写了文本框,并且年龄被计算并显示在第二个文本框中,该文本框是只读的
我不知道生日,我输入年龄,没有生日,也没有其他动作
您对第一点有想法吗?
解决方法
克里斯,
我有一个类似的问题,不久前将此页面用作参考:
http://www.javascriptkit.com/javatutors/datedifference.shtml
或这个:
http://snippets.dzone.com/posts/show/623
只需将您的呼叫包装在所需的jquery按钮中单击等即可。
干杯
,使用dateJS库
,
--markup--
<input id = \"eAge\" type = \"text\"/>
<input type= \"button\" id = \"fAge\" value = \"find\"/>
<input id = \"age\" type = \"text\"/>
--jQuery --
$(\"#fAge\").click(function() {
var currentYear = (new Date).getFullYear();
var year = $(\"#eAge\").val().split(\',\');
$(\"#age\").val(currentYear - year[1]);
});
这是指向它的jsFiddle链接-http://jsfiddle.net/GGgqx/
希望能有所帮助
,我的功能:
$(\'#txtFecha\').focusout(function () {
var fecha = document.getElementById(\'txtFecha\').value;
var edad = \'\';
//supose my date is dd/mm/yyyy
if ((fecha.substring(2,3) != \"/\") && (fecha.substring(5,6) != \"/\")) {
edad = \'\';
}
else {
var dia = fecha.substring(0,2);
var mes = fecha.substring(3,5);
var anio = fecha.substring(6,10);
var diaActual = (new Date).getDay();
var mesActual = (new Date).getMonth();
var anioActual = (new Date).getFullYear();
if (mes > mesActual)
edad = anioActual - anio - 1;
if (mesActual == mes && dia > diaActual)
edad = anioActual - anio - 1;
edad = anioActual - anio;
if (edad < 0 || edad > 100)
edad = \'\';
}
$(\"#txt2Edad\").val(edad);
});