.NET Web 表单下拉列表和日期时间选择器需要 HTML 5 验证

Posted

技术标签:

【中文标题】.NET Web 表单下拉列表和日期时间选择器需要 HTML 5 验证【英文标题】:HTML 5 required validation for .NET Web Forms dropdown list and date time picker 【发布时间】:2016-07-11 04:37:00 【问题描述】:

我的 aspx 页面上有两个控件,无法使用 html 5 进行验证:

             <asp:DropDownList ID="dropCountry" required runat="server"></asp:DropDownList>

 <input id="datepicker" class="datepicker" required runat="server" readonly="true"/>

这些是 jquery 日期选择器和 jquery 代码包含的脚本,用于显示日期选择器:

<script src="datepicker/jquery.plugin.js"></script>
<script src="datepicker/jquery.datepick.js"></script>
<link href="datepicker/jquery.datepick.css" rel="stylesheet" />

<script>
      $(function ()
      
          $(".datepicker").datepick();
      );
  </script>

由于某种原因,当我单击“提交”按钮时,这两个控件将无法验证...任何想法为什么??

感谢您的帮助!

附:这些是控制台中的错误:

【问题讨论】:

控制台有错误吗? 它可能会阻止 datepick 库正常工作 是的,有几个错误,我已经更新了我的问题,你能看到吗? 添加了答案... 【参考方案1】:

删除控件上的 runat='server',因为我认为这可能会在运行时通过 .NET 更改 ID。

编辑:通过类而不是 ID 来定位它,就像这样...

<input required runat="server" class="datepicker" readonly="true"/>

<script>
  $(function ()
  
      $(".datepicker").datepick();
  );

【讨论】:

好吧,我试试这样 你可能也想给它一个更好的类名,而不是 datepicker,就像我建议的那样! :-) P.S.我已经更新了我的第一个问题,显示了我是如何使用你的答案进行编辑的……它的 sIt 不再验证它:/ 它没有验证仍然使用“必需”标签的控件...它只是出于某种原因跳过它我已经从控制台更新了我的问题中的错误。你可以看看吗? 让我们continue this discussion in chat.

以上是关于.NET Web 表单下拉列表和日期时间选择器需要 HTML 5 验证的主要内容,如果未能解决你的问题,请参考以下文章

来自日期选择器的输入会破坏下拉列表中的输入

jquery日期选择器,但日月和年在单独的下拉列表中

JS 表单 - 动态填充下拉列表 - 多选,表单填充

日期选择器日历被隐藏在下拉列表中

用于 JQuery 日期时间选择器的 ASP.Net 包装器控件

引导模式 + 日期选择器 + 表单值