HTML输入弹出日历问题
HTML input popup calendar issue
当用户单击输入字段时,我正试图弹出一个日历控件。日历控件实际上是我试图切换显示的日历的div部分。问题是当我点击输入时,日历不会显示。但问题是,当我将输入的位置属性从"相对"更改为"固定"时,日历会显示出来,但相对于浏览器。我希望它相对于输入字段显示。
<script>
function showCalendar(startDate)
{
try{
//var inputElement = document.getElementById(startDate);
var inputElement = document.getElementsByName(startDate)[0];
var divCalendar = document.getElementById('calendar');
var divContent = document.getElementById('content');
if(divCalendar.style.display == 'block')
{
divContent.appendChild(divCalendar);
//inputElement.style.position='fixed';
//divCalendar.style.position='fixed';
divCalendar.style.display = 'none';
//divCalendar.style.zindex = 0;
}
else
{
divCalendar.parentNode.removeChild(divCalendar);
inputElement.appendChild(divCalendar);
inputElement.style.position='relative';
divCalendar.style.position='absolute';
divCalendar.style.top=30;
divCalendar.style.left=30;
//divCalendar.style.zindex = 100;
divCalendar.style.display = 'block';
}
}
catch(e)
{
alert(e);
}
}
</script>
<body>
<div id="content">
<table id="bookingTable">
<tr>
<th colspan="4">Book Rentals</th>
</tr>
<tr>
<th colspan="4"><%=fileService.title%></th>
</tr>
<tr>
<td style="text-align:right;">Start Date</td>
<td style="text-align:left;">
<input style="cursor:pointer;" type="text" name="startDate" value="" onclick="showCalendar('startDate')">
</td>
<td style="text-align:right;">Start Time</td>
<td style="text-align:left;"><input type="text" name="startTime" value=""></td>
</tr>
<tr>
<td style="text-align:right;">End Date</td>
<td style="text-align:left;">
<input style="cursor:pointer;" type="text" name="endDate" value="" onclick="showCalendar('endDate')">
</td>
<td style="text-align:right;">End Time</td>
<td style="text-align:left;"><input type="text" name="endTime" value=""></td>
</tr>
<tr>
<td colspan="4" style="text-align: center;">
<input type="submit" class="button" name="submit" value="Add" />
</td>
</tr>
</table>
<div id="calendar" style="display: none;">
Here is create a table dynamically which represent a calendar and which I am trying to toggle the display.
</div>
</div>
尝试使用以下Javascript:
<script type="text/javascript">
<!--
function toggle_visibility(id) {
var e = document.getElementById(id);
if(e.style.display == 'none')
e.style.display = 'block';
else
e.style.display = 'none';
}
//-->
</script>
你的按钮上的这个HTML正在切换日历:
onClick="toggle_visibility('calendar');"
这只是显示/隐藏ID为"calendar"的div容器。您可能需要将日历脚本本身放在div中,因为您不需要通过控件将变量传递给它。
相关文章:
- Google 日历 API V3 会解决与会者和创建者 Java 脚本问题
- Ajax日历扩展器问题
- Javascript的问题,它不允许加载完整日历
- j查询日历操作问题
- 完整日历弹出问题
- 在全日历.js中显示事件时出现问题
- 日历和快速搜索的 Jquery 冲突问题
- 设置“完整日历”问题中的默认点击选择突出显示
- Jqx日历周末问题
- 使用 momentjs 和引导日历时的日期格式问题
- Javascript来临日历,查找日期/月份时遇到问题
- 在Ionic应用程序中安装角度引导日历时出现问题
- Angular UI日历呈现问题
- 完整日历日单击并删除了时区更改的事件日期问题
- HTML输入弹出日历问题
- 过去的完整日历问题
- Jquery中的日历问题
- 在完整日历中保存事件时出现问题
- 完整日历高度问题
- 检索嘉宾名单从日历问题,谷歌应用程序脚本(GAS)