【问题标题】:Datepicker Icon only works with id tag, not class tagDatepicker 图标仅适用于 id 标签,不适用于类标签
【发布时间】:2013-09-23 13:22:23
【问题描述】:

我正在尝试让 Datepicker 日历图标出现在输入文本框旁边。但是,使用 'id=datepicker' 我只能让它出现在出发日期的文本框旁边,而不是返回日期的文本框旁边。这是因为我使用了 'id' 两次,但是当我将其切换为 'class=datepicker' 时,图标会从两者中消失。

<html>

...

<head>

...

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js"></script>

<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />
<link href="jquery-ui.css" rel="stylesheet" type="text/css">
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
  <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>


<script>
  $(function() {
    $( "#datepicker" ).datepicker({
      showOn: "button",
      buttonImage: "calendar.gif",
      buttonImageOnly: true
    });
  });
  </script>

...

</head>


<body>

...

<strong>Departure date</strong><span>*</span>:
<input type="text" id="datepicker" name="departuredate"/>

<strong>Return date</strong><span>*</span>: 
<input type="text" id="datepicker" name="returndate"/>

...

...

【问题讨论】:

    标签: jquery-ui class datepicker icons


    【解决方案1】:

    不要:

    1. 在一个页面中多次包含相同的 JavaScript(无论是否缩小)。
    2. 为一个页面中的多个元素分配相同的 ID。

    如果您执行以下操作(注意不同的 ID):

    <strong>Departure date</strong><span>*</span>:
    <input type="text" id="dDatepicker" class="datepicker" name="departuredate"/>
    <strong>Return date</strong><span>*</span>: 
    <input type="text" id="rDatepicker" class="datepicker" name="returndate"/>
    

    那么这将起作用:

    $(function() {
      $( ".datepicker" ).datepicker({
        showOn: "button",
        buttonImage: "calendar.gif",
        buttonImageOnly: true
      });
    });
    

    Fiddle here.

    编辑

    您可能还需要检查您的 CSS,因为 datepicker 类可能会被覆盖。也许尝试包括 onlynone jquery-ui.css 来测试。

    如果只是日历图标不渲染的情况,那么需要指定calendar.gif文件的正确路径。所以说当你转到http://mysite.com/path/to/images/calendar.gif时,你可以在浏览器中看到该文件

    然后你需要像这样设置日期选择器:

    $(function() {
      $( ".datepicker" ).datepicker({
        showOn: "button",
        buttonImage: "/path/to/images/calendar.gif",
        buttonImageOnly: true
      });
    });
    

    【讨论】:

    • 谢谢,我知道你做了什么,但是一旦我将 datepicker 分配给“类”,图标就会从两个框中消失。
    • 不,但感谢您的所有帮助。我设法通过使用下面这个答案中的代码来解决这个错误。再次感谢。
    【解决方案2】:
      <script>
      $(function() {
        $( "#datepicker" ).datepicker({
          showOn: "button",
          buttonImage: "calendar.gif",
          buttonImageOnly: true
        });
          $( "#datepicker2" ).datepicker({
          showOn: "button",
          buttonImage: "calendar.gif",
          buttonImageOnly: true
        });    
      });
      </script>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-08-10
      • 1970-01-01
      • 2017-07-15
      • 2014-08-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多