2

を使用していますがJQuery-Mobile datebox、日付入力データを設定したい-オプションを使用してJQuery

編集:

私の質問は:jqueryを使用して日付入力データオプションを設定する方法ですか?

入力コード:

            <input 
                name="mydate" 
                id="mydate" 
                type="date"
                pickPageTheme="a"
                data-role="datebox"
                data-options='{"mode": "calbox" }' />
4

2 に答える 2

3

dateboxプラグインは、属性を解析するために内部的にdata()に依存しているdata-optionsため、明示的な属性を作成する代わりに、そのセッターフォームを使用できます。

$("#mydate").data("options", {
    mode: "calbox",
    highDates: ["2011-11-02", "2011-11-03"],
    highDatesAlt: ["2011-11-09", "2011-11-10"],
    pickPageOAHighButtonTheme: "b"
});

ウィジェットがすでに作成されている場合は、後でウィジェットを更新することを忘れないでください。

$("#mydate").datebox("refresh");

編集:残念ながら、日付ボックスウィジェットがページの読み込み時にモバイルフレームワークによって自動的に作成された場合、上記のコードは機能しません(data-options属性は1回だけ解析されるため)。この問題を回避するには、次のoptions方法を使用できます。

$("#jqmdb").datebox("option", {
    mode: "calbox",
    highDatesAlt: ["2011-11-09", "2011-11-10"],
    highDates: ["2011-11-02", "2011-11-03"],
    pickPageOAHighButtonTheme: "b"
});

ただし、その場合は、highDatesAlt highDatesに指定する必要があります。そうしないと、前者は無視されます。

ここであなたのフィドルを更新しました。

于 2011-11-21T20:07:05.087 に答える
0

次のようなコードがある場合:

<input name="myMEETINGdate" id="mydate" type="date" data-role="datebox"
      data-options='{"mode": "calbox","dateFormat":"%m/%d/%Y","calUsePickers": true, "calNoHeader": true,"highDates": ["07-20-2012", "2011-12-25"] }'>
</input>

そして使用:

$("#myminutesdate").datebox( "option",{highDates: ["2012-08-08", "2012-11-03"] });                       
$("#myminutesdate").datebox("refresh");

最初のコードスニペットのようには機能しません。正しい名前と対応するIDを持っていることを確認してください。

正しいコード:

<input name="myminutesdate" id="myminutesdate" type="date" data-role="datebox"
     data-options='{"mode": "calbox","dateFormat":"%m/%d/%Y","calUsePickers": true, "calNoHeader": true,"highDates": ["2012-12-07" , "2012-07-12"] }' >
</input>

それはばかげていますが、非常に重要です。これがお役に立てば幸いです。

于 2012-07-23T19:49:44.267 に答える