【问题标题】:Textbox won't get selected date using jquery datepicker文本框不会使用 jquery datepicker 获取选定的日期
【发布时间】:2016-02-29 08:50:51
【问题描述】:

源代码:

<script src="Scripts/jquery.min.js"></script>
<script src="Scripts/bootstrap.js"></script>
<script src="Scripts/bootstrap-datepicker.min.js"></script>
<script type="text/javascript">

脚本:

 $(function () {
        $("#datetimepicker1").datepicker({ dateFormat: "yy-mm-dd" });
        $("#datetimepicker1").on("change", function () {
            var selected = $(this).val();
            $("<%=txtDate.ClientID %>").val(selected)
        });
    });
</script>

设计师:

        <div class="form-group">
            <label for="txtDate" class="control-label col-sm-2 col-md-2 col-lg-2">&nbsp;&nbsp;&nbsp;preferred date </label>
            <div class="col-sm-4 col-md-4 col-lg-4 col-xs-10">
                <asp:TextBox ID="txtDate" runat="server" CssClass="form-control datepick"></asp:TextBox>
            </div>
            <div class="col-sm-2 col-md-2 col-lg-2 col-xs-2">
                <button type="button" id="datetimepicker1" class="common-button2"><span aria-hidden="true" class="glyphicon glyphicon-calendar"></span></button>

            </div>
        </div>

好的,问题是,日历弹出,但文本框不会得到选定的日期,所有脚本都包括在内并且没有错误。请帮忙谢谢!

编辑:使用 因为我的页面有一个母版页。

【问题讨论】:

  • 添加datepicker的代码在哪里
  • 嗨@coder 已编辑,请看谢谢!
  • 如果您使用母版页,则通过从浏览器中检查元素来获取 ID
  • 已经这样做了,不返回任何内容@coder

标签: c# jquery asp.net datepicker


【解决方案1】:
$("<%=txtDate.ClientID %>").val(selected)

不是一个有效的 jquery 选择器

你想要

   $("#txtDate").val(selected)

【讨论】:

    【解决方案2】:

    如果您不使用任何母版页,那么只需编写

    $("#txtDate").val(selected);
    

    否则

    $("#<%=txtDate.ClientID %>").val(selected);
    

    '#' 很重要,因为它表明这是一个 id。

    【讨论】:

      【解决方案3】:

      您的datepicker 太难使用了。

      这是一个简单的解决方案

      <p>
              Date:
              <input type="text" id="datepicker"></p>
      

      JS:-

       <link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
      <script src="//code.jquery.com/jquery-1.10.2.js"></script>
      <script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
      <link rel="stylesheet" href="/resources/demos/style.css">
      

      Working demo

      更新

      $(function () {
              $("#Id generated by inspecting element from browser").datepicker();
          });
      

      【讨论】:

      • 那么您需要添加一些有关您的代码的更多信息,因为您的文本框采用从母版页继承的 ID
      • 不,文本框在内容页面上。
      • 我说它是从母版页INHERITED。我没有在母版页上说它。谢谢。除非您提供有关代码的更多信息,否则抱歉,我们无法检测到您的问题并为您提供帮助。
      【解决方案4】:

      jquery datepicker 在 onSelect 事件而不是 onChange 上返回所选值。试试这个

      <script>
       $(function () {
              $("#datetimepicker1").datepicker({ dateFormat: "yy-mm-dd" }, onSelect: function(dateText) {
         $("<%=txtDate.ClientID %>").val(dateText)
        });
      
          });
      </script>
      

      【讨论】:

        猜你喜欢
        • 2013-06-21
        • 1970-01-01
        • 1970-01-01
        • 2011-02-03
        • 1970-01-01
        • 2014-12-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多