0

我有一个 PHP 表单,在其中我使用 java 脚本从日历中获取出生日期值,然后我编写了一个 onchange java 脚本来从文本框的值计算年龄并将其显示在另一个文本框中.. 但是 onchange 函数不起作用...

这是文本框代码,用于从我从某个站点下载的外部 JavaScript 从日历中获取出生日期..这很好..它在文本框中显示从日历中选择的日期..

<input id="birthdate" name="birthdate" type="text" size="12" maxlength="10" readonly="readonly" onChange="UpdateAge();"  />
                                                <script language="JavaScript">
    new tcal ({
        // form name
        'formname': 'reg',
        // input name
        'controlname': 'birthdate'
    });

这是计算年龄的功能..

 <script type="text/javascript">
    function UpdateAge(){
  var bdate = document.getElementById('birthdate').value;
  var cdate = date('d-m-Y');
  var info = (strtotime($cdate)-strtotime($bdate))/(24*60*60*365); 
  alert("hi");
  document.getElementById('age').value = info;
}
</script>

但是第二个文本框没有任何变化..这是第二个文本框的代码..

<input name="age" type="text" id="age" size="5" maxlength="2"  />

请帮我解决..提前谢谢..

4

3 回答 3

3
(strtotime($cdate)-strtotime($bdate))

这不是 Javascript 代码。您必须找到一个可以执行与 PHP 相同处理的库strtotime

于 2013-01-15T16:24:16.623 回答
2

函数UpdateAge()有 PHP 代码

(strtotime($cdate)-strtotime($bdate))/(24*60*60*365); 

这是无效的 JS,所以我不会在客户端上工作。PHP在服务器上运行,JS在客户端上运行。

于 2013-01-15T16:24:09.463 回答
1

strtotime 之前说过 strtotime 不是 javascript 函数。这是一个PHP函数。看看 Date 对象及其解析方法:http ://www.w3schools.com/jsref/jsref_parse.asp

于 2013-01-15T16:51:33.007 回答