JQuery (JQM) обновить элемент формы - PullRequest
1 голос
/ 01 апреля 2012

Я пытаюсь установить значение по умолчанию для элемента формы, вызывая некоторый js-код, но кажется, что ввод не обновляется.

<li data-role="fieldcontain">
<label for="defcal">Purchase Date</label>
<input name="defcal" type="date" data-role="datebox" id="defcal"/>
</li>

function onDeviceReady() {
var today = new Date();
var dayofmonth = today.getDate();
var dayofweek = today.getDay();
var year = today.getFullYear();
var month = today.getMonth();
var monthstring = month;
if(month < 10){
    monthstring = "0"+monthstring;
}

$('#defcal').val(year+'-'+month+'-'+dayofmonth);

}

Кто-то предложилиспользование $ ('# defcal'). textinput ();обновить ввод, но он тоже не сработал.

Ответы [ 2 ]

1 голос
/ 02 апреля 2012

Вы можете захотеть проверить, что вызывается функция onDocumentReady, добавив к ней alert() или что-то еще, потому что этот код работает в jsfiddle при вызове как функция готовности документа или $(function() { }); блок.

Пример: http://jsfiddle.net/p3GbM/

В этом примере я также установил значение #devcal, используя monthstring в том виде, в котором оно было задумано.

Надеюсь, это поможет!

1 голос
/ 01 апреля 2012

Зависит от того, когда вы хотите вызвать эту функцию, если некоторые изменения elts сделайте что-то вроде этого:

    $(function() {
    $('#ID_ELTS').change(function() {

  var today = new Date();
    var dayofmonth = today.getDate();
    var dayofweek = today.getDay();
    var year = today.getFullYear();
    var month = today.getMonth();
    var monthstring = month;
    if(month < 10){
        monthstring = "0"+monthstring;
    }

    $('#defcal').val(year+'-'+month+'-'+dayofmonth);
    });

});
...