代码之家  ›  专栏  ›  技术社区  ›  Alex

jquery datepicker onselect有问题

  •  12
  • Alex  · 技术社区  · 15 年前

    按照jquery站点上的基本onselect规范,我尝试了以下代码:

    <!DOCTYPE html>
    <html>
    <head>
      <link type="text/css" href="http://jqueryui.com/latest/themes/base/ui.all.css" rel="stylesheet" />
      <script type="text/javascript" src="http://jqueryui.com/latest/jquery-1.3.2.js"></script>
      <script type="text/javascript" src="http://jqueryui.com/latest/ui/ui.core.js"></script>
      <script type="text/javascript" src="http://jqueryui.com/latest/ui/ui.datepicker.js"></script>
      <script type="text/javascript">
      $(document).ready(function(){
        $("#datepicker").datepicker();
    
    
    $('#datepicker').datepicker({
       onSelect: function(dateText, inst) { alert("Working"); }
    });
    
    
    
      });
    
      </script>
    </head>
    <body style="font-size:62.5%;">
    
    <div type="text" id="datepicker"></div>
    
    </body>
    </html>
    

    不能让它工作! 本来是想让一件更复杂的事情去工作,但是OnSelect没有工作,所以我回到了基本的工作中,仍然没有工作,有人知道我做错了什么吗??

    4 回复  |  直到 9 年前
        1
  •  12
  •   VoteyDisciple    15 年前

    您可以尝试删除第二个 $("#datepicker").datepicker() 就在那条线上,离开:

    $(document).ready(function(){
        $('#datepicker').datepicker({ onSelect: function(dateText, inst) { alert("Working"); } });
    });
    
        2
  •  41
  •   Ken Browning    15 年前

    您没有正确使用API。别误会,一开始很混乱。

    这两行命令datepicker小部件初始化元素上的datepicker:

    $("#datepicker").datepicker();
    $('#datepicker').datepicker({
       onSelect: function(dateText, inst) { alert("Working"); }
    });
    

    你可以去掉第一个,因为它除了阻止第二个没有任何作用。

    如果在初始化小部件后要更改其中一个选项的值,则需要使用此API:

    $('#datepicker').datepicker('option', 'onSelect', function() { /* do stuff */ });
    

    或者,也可以使用jquery附加处理程序 bind 功能:

    $('#datepicker').bind('onSelect', function() { /* do stuff */ });
    
        3
  •  17
  •   hamzeh.hanandeh    9 年前

    选择日期时此代码是否有效:

    $("#datepicker").datepicker({
        dateFormat: 'dd/mm/yy'
    }).on("changeDate", function (e) {
        alert("Working");
    });
    
        4
  •  0
  •   Naveen Kumar    9 年前

    jquery datepicker的onselect有时不起作用,但您可以通过在上调用方法来绕过它。 onchange 你的事件 input 类型。

    function changeDate() {
       $("#datepicker").datepicker(
            "change",
            { 
                alert("I am working!!");
            }
        );
    }
    

    叫这个 changeDate() 方法AS

    <div type="text" id="datepicker" onchange ="javascript:changeDate();" />