根据用户输入的开始日期和结束日期,用onclientclick事件判断是否结束日期大于开始日期,如果否的话,返回false,即可禁止onclick事件的发生。
按钮加上事件:
OnClientClick="return AlertInfo();" //一定要写return才能阻止onclick事件
OnClick="btnEdit_Click"
时间控件:
<tr>
<th style="width: 20%; text-align: right"><span style="color: red;">*</span>开工时间:
</th>
<td style="width: 30%; text-align: left; height: 26px;">
<RgName:DateTextBox CssClass="TextClass" Width="200px" ID="BeginConstructionDate_4" runat="server" InputDateType="Input" Character="HX" AllowNull="false" RelationName="开工时间"></RgName:DateTextBox>
</td>
<th style="width: 20%; text-align: right"><span style="color: red;">*</span>竣工时间:
</th>
<td style="width: 30%; text-align: left; height: 26px;">
<RgName:DateTextBox CssClass="TextClass" Width="200px" ID="EndConstructionDate_4" runat="server" InputDateType="Input" Character="HX" AllowNull="false" RelationName="竣工时间"></RgName:DateTextBox>
</td>
</tr>
脚本:
<script type="text/javascript">
function AlertInfo() {
var startTime = $("#<%=BeginConstructionDate_4.ClientID%>").find("input[type=hidden]").val();
var endTime = $("#<%=EndConstructionDate_4.ClientID%>").find("input[type=hidden]").val();
if (startTime > endTime) {
alert('竣工时间应大于开工时间,请重新输入!');
return false;
}
}
</script>
注意事项,开工时间和竣工时间是封装的控件,它是由多个html控件组成的,展现的效果如下:
运行界面后,按F12,选中元素后,显示为如下:
脚本解析:
获取服务端控件写法(这是只获取了div): <%=EndConstructionDate_4.ClientID%>
若想获取用户输入的时间,根据F12查看到的界面则,应该查找div下的type=hidden的 input元素,即可。获取到输入的时间值:
.find(“input[type=hidden]”).val()