我正在开发一个 asp.net mvc 3 应用程序。我使用剃须刀,但我认为在这种情况下它与问题无关。我使用继承的 jQuery 日期时间选择器,它适用于我使用它的所有页面,但对于这个,日历显示的不是我想要的位置。事实上,这就是我现在得到的:
我想,在其他使用相同代码的页面上,日历出现在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";
我认为他们更多地参与其中,但是……这只是建议。如果您需要任何具体的附加信息,请询问。