我遇到了问题:如果用户选择一个来自我正在显示tr的数据库和一个带有当前日期和时间的RadDateTimePicker的值,我在客户端有一个RadComboBox。 事情是在我保存表单之后,我正在禁用表单上的所有控件问题是在我保存tr之后消失了但我拥有所有其他控件。 我怎样才能防止这种情况发生? (除非用户从RadComboBox中选择一个值,否则最初的行为不是显示tr)
ASPX代码:
<tr>
<td class="GeneralFontShape" style="height:15px; vertical-align:top; border: 0px solid red;">
Status:
</td>
<td class="GeneralFontShape" style="height:15px; border: 0px solid red; vertical-align:top;">
<telerik:RadComboBox runat="server" ID="rcbStatus" Width="250px" CheckBoxes="False" TabIndex="10" Enabled="True" EmptyMessage="Select Status" OnClientSelectedIndexChanged="StatusCheck"></telerik:RadComboBox>
</td>
<tr id="EndingTime" style="visibility:hidden;">
<td class="GeneralFontShape" style="height:15px; vertical-align:top; border: 0px solid red;" >
<div id="divEndingTime" runat="server" visible="true"> Ending Time:</div>
</td>
<td class="GeneralFontShape" style="height:15px; border: 0px solid red; vertical-align:top;">
<div id="divrdtpEndingTime" runat="server" visible="true">
<telerik:RadDateTimePicker ID="rdtpEndingTime" runat="server" AutoPostBack="False" Visible="true"
DateInput-Width="170px" onkeypress="return isNumberKey(event)" Width="250px" Culture="en-US">
<TimeView ID="TimeView2" runat="server" CellSpacing="-1"></TimeView>
<TimePopupButton HoverImageUrl="" ImageUrl="" />
<Calendar ID="Calendar1" runat="server" EnableKeyboardNavigation="true" >
<SpecialDays>
<telerik:RadCalendarDay Repeatable="Today" Date="" ItemStyle-BackColor="lightblue"></telerik:RadCalendarDay>
</SpecialDays>
</Calendar>
<DateInput ID="DateInput3" runat="server" ToolTip="Date input" LabelWidth="60px">
<EnabledStyle Width="150px" />
</DateInput>
<DatePopupButton HoverImageUrl="" ImageUrl="" />
</telerik:RadDateTimePicker>
</div>
</td>
</tr>
JS代码:
function StatusCheck(sender, args) {
var status = $find("<%= rcbStatus.ClientID %>");
var datePickerEndingTime = $find("<%= rdtpEndingTime.ClientID %>");
// var EndingTime = datePickerEndingTime.get_selectedDate();
var item = status.get_text();
if (item == "Close") {
document.getElementById('EndingTime').style.visibility = 'visible'
datePickerEndingTime.set_visible(true);
var nowDate = new Date();
datePickerEndingTime.set_selectedDate(nowDate)
} else {
document.getElementById('EndingTime').style.visibility = 'hidden'
datePickerEndingTime.set_visible(false);
}
}
答案 0 :(得分:0)
使用样式表类使TR可见或不可见,并在您的javascript中更改此行为,如下所示:
你的样式表类:
.hidden { display: none !important; visibility: hidden !important; }
您的TR元素:
<tr id="EndingTime" class="hidden">
你的 JQuery 代码:(你需要jquery来使用下面的代码)
function StatusCheck(sender, args) { ..... if (item == "Close") { $("#EndingTime").removeClass("hidden"); .... }else { $("#EndingTime").addClass("hidden"); .... } }
你也可以为其他元素做同样的事情。