PHP onchange() javascript not working


PHP onchange() javascript not working

我有一个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"  />

请帮我解决问题。。提前谢谢。。

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

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

函数UpdateAge()已获得PHP代码

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

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

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