【发布时间】:2013-09-30 13:16:01
【问题描述】:
我的网页中有一个 Calentder Ajax 扩展。还有一个显示所选日期的文本框。
<asp:TextBox ID="txtDate" runat="server" Width="90px""></asp:TextBox>
<asp:ImageButton ID="imgCallDate" runat="server" ImageUrl="pic/Calendar.png"
ImageAlign="Baseline" Height="16px" />
<asp:CalendarExtender ID="CalToDate2" runat="server" Enabled="True" TargetControlID="txtDate"
Format="yyyy/MM/dd" PopupButtonID="imgCallDate" StartDate="2013/09/01"
OnClientDateSelectionChanged="checkDate()"
>
</asp:CalendarExtender>
....
<asp:Button ID="Find" runat="server" Text="OK" onclick="Find_Click" />
与
<script>
function checkDate(sender, args) {
if (sender._selectedDate.getDay=="")
{
alert("You have to choose one date");
}}
</script>
在 OnClientDateSelectionChanged 调用 checkDate() 函数时,当客户端单击按钮 Find 而不在日历中选择日期时显示警报。
但似乎函数checkDate() 是错误的。即使我没有在日历中选择日期,也不会显示任何警报。
我是 ASP.Net 的新手? 我上面的代码有什么错误吗???
我只是觉得问题出在这行:if (sender._selectedDate.getDay=="")
【问题讨论】:
-
这是整个脚本吗?如果是,则问题很可能是缺少
}。把它放在脚本的末尾,</script>标签之前,它可能会开始工作。 -
哦,当我从我的项目中复制时,我错过了那个 }。看看我的更新
-
您在 sender._selectedDate 而不是 sender._selectedDate.getDay 处出错
-
Avinash:我尝试过使用 sender._selectedDate=="",但它不起作用
-
根据答案,
_selectedDate可能为空,这与""不太一样。试试if (!sender._selectedDate) {看看是否可行。
标签: javascript jquery asp.net c#-4.0