datetimepicker getElementById vs name ie8问题

时间:2012-07-17 17:18:22

标签: php

我有一个javascript datetimepicker,适用于除IE7或更高版本之外的所有内容。问题似乎与getElementById有关。以下是当前代码的外观:

<tr>
 <td style="width: 143px">Call Date:
 </td>
<td style="width: 472px">
<input type="Text" name=cdate size=40 style="color: black;background-color:#FFFF66; width: 270px;">
<a href="javascript:NewCal('cdate','ddmmyyyy')"><img src="cal.gif" width="16" height="16" border="0" alt="Pick a date"></a>
</td>
</tr>

在IE7或更高版本中,这不起作用。我得到“Javascript错误对象丢失”。如果我将name=cdate更改为id=cdate它可以正常工作但是当我将表单提交到我的php插入时:

<?
$cdate=$_POST['cdate'];

提交失败。那么我该怎样才能纠正这个问题,或者我怎样才能使id= element成为name= element ....希望这是有道理的。

由于

1 个答案:

答案 0 :(得分:1)

您可以同时使用nameid,因此服务器将获取名称,您可以在客户端使用id

<input type="Text" name="cdate" id="cdate" size="40" style="color: black;background-color:#FFFF66; width: 270px;" />

所以你可以在服务器端使用

$cdate=$_POST['cdate']; // because it has name="cdate"

在ckient方面你可以使用

var cdate=getElementById('cdate'); // Because it has id="cdate"