我正在开发一个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";
我认为他们更多参与,但......这只是建议。如果您需要任何具体的附加信息,请询问。