【问题标题】:Jquery UI Datepicker doesn't show again when link is clicked单击链接时,Jquery UI Datepicker 不再显示
【发布时间】:2023-04-04 04:40:02
【问题描述】:

我似乎有这个工作,除了一旦点击链接,日期选择器打开,然后我选择一个日期,一切都很好,然后一旦我尝试再次点击链接,日期选择器就会再也打不开了。

我做错了什么?

<html>

<head>

<!-- LOAD JQUERY LIBRARY: -->  
    <link   href="jq/jquery-ui.css"         type="text/css" rel="stylesheet" />
    <script src="jq/jquery.min.js"          type="text/javascript"> </script>
    <script src="jq/jquery-ui.min.js"       type="text/javascript"> </script>

<script type="text/javascript">

function test() { 

var datePickerValue = null; 

$("#d1").datepicker().datepicker("show").change(function () 
{ 
    $('#d1').datepicker({onSelect:  datePickerValue = $(this).val() }).hide();

  alert("You picked: " + datePickerValue);
}); 



} 


</script>



</head>

<body>

<div id="d1"></div>
<a href="javascript:test()">test</a>

</body>

</html>

【问题讨论】:

    标签: javascript jquery html javascript-framework


    【解决方案1】:

    只需在 datepicker() 之前添加 show 方法,如下所示:

    $("#d1").show().unbind().datepicker().datepicker("show").change(function ()  { 
       $('#d1').datepicker({onSelect:  datePickerValue = $(this).val() }).hide();
       alert("You picked: " + datePickerValue);
    }); 
    

    这将解决您的问题。

    【讨论】:

    • 非常感谢昆丹。这很好用,但我注意到,一旦选择了日期,警报框就会弹出 2 或 3 次以上。什么会导致这种情况,以及可以采取什么措施来解决这种行为,使警报框只弹出一次?
    • @JasonKelly,我重新检查了您的代码,我注意到这是因为您一次又一次地将 datepicker 绑定到 div。所以在这种情况下,只需先解除绑定,然后再次绑定。我已经更新了我的答案,请看一下。
    • 哇!不管你做什么,它就像一个魅力。非常感谢您!!!!很惊讶有像你这样的优秀、聪明和超聪明的人在那里。非常感谢。你真是个天才!
    【解决方案2】:

    对不起,如果我在这里完全不合时宜,但如果您使用 jquery .on - http://api.jquery.com/on/

    ,您可能会取得更大的成功

    所以在你的链接中添加一个 id 或类:

    <a class="clicky" href="#">test</a>
    

    然后像这样调用你的函数:

    $("body").on("click", ".clicky", test);
    

    我认为这会解决你的问题,但我可能错了

    【讨论】:

      【解决方案3】:
      function test() {
          $('#d1').datepicker({onSelect: function(){alert("You picked: " + $(this).val())})} ); 
      } 
      

      【讨论】:

        猜你喜欢
        • 2011-12-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-02-10
        • 1970-01-01
        • 1970-01-01
        • 2011-01-25
        相关资源
        最近更新 更多