javascript - 隐藏div中的日历

标签 javascript css calendar position hidden

我在一个表单中使用了 3 次 JavaScript 日历。第一个实例就像它应该的那样工作。第二个和第三个都在显示 onclick 的隐藏 div 中。这两个日历会在页面的左上角弹出。如何让它按应有的位置放置?

    <div id="form_container">
    <form  method="post" action="index.php">
        <fieldset>
            <legend>Day One</legend>
            <li id="li_7" >
            <label class="description" for="d1_date">Date</label>
                <input type="text" name="d1_date" id="d1_date" value="<?php if(isset($_GET['d1_date'])){ echo $_GET['d1_date']; }else{ echo "";}?>" class="event_search_date_input" /> 
            </li>   
            <a class="add_day_link" onclick="document.getElementById('day_two_div').style.display='';position='relative';return false;" 
            href="" style="text-decoration:none;border-bottom:1px dotted blue;">Plan the next day...</a>
        </fieldset>
    </div>
    <div id="day_two_div" style="display:none;"> 
        <fieldset>
            <legend>Day Two</legend>
            <li id="li_14" >
            <label class="description" for="d2_date">Date</label>
                <input type="text" name="d2_date" id="d2_date" value="<?php if(isset($_GET['d2_date'])){ echo $_GET['d2_date']; }else{ echo "";}?>" class="event_search_date_input" /> 
            </li>   
            <a class="add_day_link" onclick="document.getElementById('day_three_div').style.display='';return false;" 
            href="" style="text-decoration:none;border-bottom:1px dotted blue;">Plan the next day...</a>
        </fieldset>
    </div><!-- close day_two_div -->    
            <li class="buttons">
                <input id="saveForm" class="button_text" type="submit" name="submit" value="Submit" />
            </li>
        </ul>
    </form> 
    </div><!-- close formContainer -->

    <script type="text/javascript" src="../js/datepickr.js"></script>
    <script type="text/javascript">
        new datepickr('d1_date', {
            'dateFormat': 'Y-m-d'
        });
        new datepickr('d2_date', {
            'dateFormat': 'Y-m-d'
        });
        new datepickr('d3_date', {
            'dateFormat': 'Y-m-d'
        });
    </script>

这是我觉得需要更正的代码吗?

    var calendarContainer = buildNode('div', { className: 'calendar' });
    calendarContainer.style.cssText = 'display: none; position: absolute; top: ' + (inputTop + this.element.offsetHeight) + 'px; left: ' + inputLeft + 'px; z-index: 100;';

最佳答案

var dd = document.createElement("div");  
dd.addClass("calendar");  
dd.style.cssText = 'display: none; position: absolute; top: 0; left: 0; z-index: 100;';  
var b = document.getElementsByTagName("body")[0];  
b.appendChild(dd);  

这只是您所描述内容的转录。
想法无论如何都适用。 如果你想要更具体的代码,请更详细地描述你的情况并发布你的完整代码——诸如使用了什么变量之类的东西否则是看不到的

关于javascript - 隐藏div中的日历,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14167451/

相关文章:

javascript - 使用 jQuery 在点击时隐藏 parent 的 parent 的 div

java - 阅读日历日期

java - 日历给出错误的星期几

Java 从另一个构造函数调用一个构造函数而不立即拥有参数

javascript - 玩javascript函数 - 具有命名和克隆的对象

javascript - 如何让 css 过渡在滚动到特定 div 之前不开始

javascript - 使用 jQuery 将所选选项设置为多个列表

javascript - 在数据列表内切换 Div 标签

html - 仅取消悬停动画 CSS

CSS 挖空一个div?