web-dev-qa-db-ja.com

Jquerydatepicker-手動トリガー

プロジェクトの1つでjquerydatepickerを使用していますが、入力領域の横にあるハイパーリンクをクリックしてdatepickerをトリガーする必要があります。

残念ながら、何らかの理由でこれを機能させることができません。

入力領域と、入力領域でカレンダーをトリガーしたいハイパーリンクがあります。

<input type="text" id="date" /><a href="#" class="trigger">Show calendar</a>

私は次のようなJavascriptコードを考え出そうとしました:

$(".trigger").click(function(){ 
$("#date").datepicker("show"); 
}); 

以前の議論の1つで他の誰かが、SHOWメソッドを使用してカレンダーをポップアップさせることを提案しました。しかし、それは機能しません。

などのコード

$(function() {
$("#date").datepicker();
});

正常に動作しますが、入力領域をクリックするだけです(ハイパーリンクのトリガーではありません)。

誰かがこれを機能させる方法について何かアイデアや提案がありますか?私の知る限り、解決策を追いかけているのは私だけではないからです。

どうもありがとうございました! ;)

12
Ondrej

click()イベント関数はjQuery(document).ready()関数にありますか?

jQueryは、ページの読み込み時に定義した各クラスにクリックイベントハンドラーを再帰的に割り当てるためです。

それ以外の場合は、次のように、ドキュメント準備機能の外部にあると何も実行されません。

$(function() {
    $("#date").datepicker();
    $(".trigger").click(function(){
        $("#date").datepicker("show");
    }); 
});

また、jQueryがロードされ、datepickerプラグインが[〜#〜] html [〜#〜]ドキュメントの先頭にロードされていると仮定します:)

20
Robert Van Sant

私はこれを使用します:

$(".ui-datepicker-current-day").trigger("click");

1
Romario