jQuery - перед сохранением внесите изменения в Var - PullRequest
0 голосов
/ 10 марта 2012

Я jQuery noob, так что с этим из пути, я выдернул свои волосы, пытаясь выяснить простую проблему.

Как изменить значение id = days, которое в настоящее времявытащил из поля ввода на веб-странице.Существует ползунок пользовательского интерфейса, который изменяет значение поля ввода.

Значение рассчитывает текущую и будущую дату на основе номера дня, указанного в ползунке / поле ввода.

var $days = $("#days");

Приведенная выше переменная, скажем, равна 3 ..... которую я хочу умножить на 3 на 7 ..... значение $ days теперь будет равно 21, которое должен выплевывать jQuery Calenderправильная дата.

Конечный результат ... каждый шаг ползунка будет = 1 неделя

Спасибо ...

Редактировать Добавлено больше информации ...... Это должен быть почти весь код, использующий календарь.

    var date = new Date(baseDate.getTime()); // Calculate the new date
    date.setDate(date.getDate() + $days.val());
    $datepicker.datepicker('setDate', date); // And set into the datepicker
    $datepicker.datepicker({
    buttonImageOnly: true
    });

Кстати, большое спасибо за быстрый ответ .....

Примечание: календарь скрыт, поэтому его нетвзаимодействие с каландром.

Ответы [ 5 ]

1 голос
/ 10 марта 2012

Чтобы получить значение поля ввода с id=days, вы должны использовать:

var $days = $("#days").val();

Я сделал небольшую демонстрацию на основе вашего вопроса, смотрите в прямом эфире здесь: http://jsfiddle.net/PQkFP/

$(function() {
    $("#slider").slider({
    slide: function(event, ui) {
          var days = $("#slider").slider("value");
          $("#days").val(days);
          // you can see $.datepicker('setDate', <number of days>);
          $("#datepicker").datepicker("setDate",(days*7));
        }
  });
});

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

Фрагмент HTML:

<head>
    <link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/
                       1.8/themes/base/jquery-ui.css">
    <link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/
                       1.8/themes/ui-darkness/jquery-ui.css">
    <script>

    </script>
</head>
<div class="demo">

<div id="slider"></div>
    Days : <input type="text" value="" id="days" />
<div id="datepicker"></div>
</div>
​
0 голосов
/ 11 марта 2012

Спасибо за вашу помощь, ребята и девочки ... Вы дали мне несколько прекрасных идей, и с этим я решил свою проблему.

Решение было ...

date.setDate(date.getDate() + [7 * $days.val()]);

Вот модифицированный код ...

        var date = new Date(baseDate.getTime()); // Calculate the new date
    date.setDate(date.getDate() + [7 * $days.val()]);
    $datepicker.datepicker('setDate', date); // And set into the datepicker
    $datepicker.datepicker({
            buttonImageOnly: true
    });

Существует более одного способа скинуть кошку.Если у вас есть лучшее или более правильное решение, пожалуйста, напишите.

0 голосов
/ 10 марта 2012

Если вы хотите получить текущее значение поля ввода с id = days, используйте следующую строку кода:

var days = $('#days').val();

или в вашем случае

var $days = $('#days'); // cache object
var days = $days.val();
0 голосов
/ 10 марта 2012

что вы пытаетесь сделать?Получить дату, которая через ($ days * 7) дней через?!

0 голосов
/ 10 марта 2012

Я не совсем понял, что вы хотите, но если вы хотите получить доступ к значению поля ввода, вы должны сделать это:

var days = $('input#days').val();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...