私は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";
彼らはもっと関与していると思いますが... それは単なる提案です。特定の追加情報が必要な場合は、お問い合わせください。