2

我正在使用 jquery 日历,但我需要在页面加载和点击时调用一个函数。当页面第一次加载时,它应该自动调用并执行该函数,第二次及以后它应该通过点击调用。可能吗??如果是,请帮助我。

   <script type="text/javascript">

   $(document).ready(function(){
      $("#fullDate").datepicker({

        showOn: "button",
        buttonImage: "images/calender.jpg",
        buttonImageOnly: true,

        onClose: function(dateText, inst) {
        $('#year').val(dateText.split('/')[2]);
        $('#month').val(dateText.split('/')[0]);
        $('#day').val(dateText.split('/')[1]);
    }


    });


});
</script>
4

3 回答 3

5

尝试编写一个命名函数并在两个事件上调用它:

function doSomething() {
    // ...
}
$(document).ready(function() { doSomething() });
$(yourElem).on("click", function() { doSomething() });

除了将匿名函数编写为回调之外,doSomething您还可以将函数名称作为参数传递,通过不使用不必要的匿名函数使内存混乱来获得一点性能:

$(document).ready(doSomething);
$(yourElem).on("click", doSomething);
于 2012-06-05T05:39:18.237 回答
1

在加载期间,您可以使用

//when window loads
$(window).load(function(){
    functionCallHere();
});

//or when DOM is ready
$(document).ready(function(){
    functionCallHere();
});

然后点击

$(element).click(function(){
    functionCallHere();  //call the function again
});

functionCallHere在这些事件上调用的公共函数的名称在哪里。

于 2012-06-05T05:37:38.870 回答
1
$(document).ready(function(){
  $("#fullDate").datepicker({
    showOn: "button",
    buttonImage: "images/calender.jpg",
    buttonImageOnly: true,

    onClose: function(dateText, inst) {
        $('#year').val(dateText.split('/')[2]);
        $('#month').val(dateText.split('/')[0]);
        $('#day').val(dateText.split('/')[1]);
    }
  });
  $("#fullDate").datepicker("show"); // this will run once.
});
于 2012-06-05T05:39:15.623 回答