PHP onchange()javascript无法正常工作

时间:2013-01-15 16:20:07

标签: php javascript

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

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

3 个答案:

答案 0 :(得分:3)

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

这不是Javascript代码。您必须找到一个可以执行与PHP strtotime

相同的处理的库

答案 1 :(得分:2)

函数UpdateAge()已获得PHP代码

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

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

答案 2 :(得分:1)

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