设置jQuery日历的定位

时间:2013-05-23 13:34:16

标签: jquery html css asp.net-mvc-3 razor

我正在开发一个asp.net mvc 3应用程序。我使用剃须刀,但我认为在这种情况下它与问题无关。我使用一个继承的jQuery日期时间选择器,它适用于我使用它的所有页面,但对于这个,日历显示的不是我想要它的位置。事实上,这就是我现在所能得到的:

Calendar

我想,在其他使用相同代码的网页上,日历显示在Choose Date文本框的正下方。这是我用来显示日历的代码:

@using (Html.BeginForm())
{
    var dateID = "jc_dateBefore";
    var calParent = "jcalendar_parentBefore";
<span>
    @Html.DropDownList(...)
    @Html.DropDownList(...)

    @Html.TextBox("selDate", "Изберете Дата", new { @id = dateID, @class = dateID })
    <img onclick="viewCalendar('@calParent', '@dateID')" style="margin-top: 5px;" width="20" height="20" src="../../Content/redmond/images/calendar-32x32.png" alt="CAL" border="0"/>
    <div id="@calParent" class="jcalendar_parent" style="z-index: 999"></div>

    @Html.DropDownList(...)
    <input type="submit" value="Search" />
</span>
}

这是我的观点,这里是viewCalendar('@calParent', '@dateID')方法:

function viewCalendar(parent, destField) {
    parentObj = document.getElementById(parent);
    if (isVisible) {
        parentObj.style.display = "none";
        isVisible = false;
    } else {
        parentObj.style.display = "";
        if (parentObj.innerHTML == "") {
            generateCalendar(parent, destField);
        }
        isVisible = true;
    }
}

function generateCalendar(parent, destField) {
    findFromDate();
    calendarIter = calendarFrom;
    findToDate();
    generateCalendarTable(parent, destField);
}
//and more methods below can't post them all

我不确定这是否足以解决问题。我根本没有发布的唯一内容是整个.js文件,但这样做太长了。但是,我得到了一个建议,也许是纯粹的CSS可以解决这个问题。我现在看不到这样的解决方案。另外我没有得到这个属性的含义:

@using (Html.BeginForm())
    {
        var dateID = "jc_dateBefore";
        var calParent = "jcalendar_parentBefore";

我认为他们更多参与,但......这只是建议。如果您需要任何具体的附加信息,请询问。

0 个答案:

没有答案