как установить параметры ввода данных даты с помощью jquery - PullRequest
2 голосов
/ 21 ноября 2011

Я использую JQuery-Mobile datebox, и я хочу установить параметры ввода даты с помощью JQuery

edit:

мой вопрос: какустановить параметры ввода данных даты с помощью jquery?

код ввода:

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

Ответы [ 2 ]

3 голосов
/ 22 ноября 2011

Плагин 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"
});

Doне забудьте обновить виджет после этого, если он уже был создан:

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

РЕДАКТИРОВАТЬ: К сожалению, приведенный выше код не будет работать, если виджет Datebox был автоматически создан мобильной структуройпри загрузке страницы (поскольку атрибут data-options анализируется только один раз).Чтобы обойти эту проблему, вы можете использовать метод options:

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

В этом случае, однако, вы должны указать highDatesAlt до highDates илипрежний будет игнорироваться.

Я обновил вашу скрипку здесь .

0 голосов
/ 23 июля 2012

Если у вас есть такой код:

<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>

And Use:

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

Он не будет работать как в первом фрагменте кода.Убедитесь, что у вас есть правильное имя и соответствующий идентификатор.

Правильный код:

<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>

Это глупо, но очень важно.Надеюсь, это помогло.

...