2

jqueryカレンダーに取り組んでいますが、ページの読み込みとクリックの両方で関数を呼び出す必要があります。ページが初めて読み込まれると、関数が自動的に呼び出されて実行され、2回目以降はクリックして呼び出されます。出来ますか??はいの場合は私を助けてください。

   <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 に答える