изменение href attr в датчике jQuery UI - PullRequest
1 голос
/ 19 октября 2010

Я играю с виджетом DatePicker пользовательского интерфейса и заметил, что когда генерируется календарь, все даты находятся внутри тега привязки с href="#".Можно ли изменить href на dateText, или как я установил dateFormat?

ex: <a class="ui-state-default" href="#October-27-2010">27</a>

Заранее спасибо

// update

есть какие-нибудь подсказки, как это сделать?

Ответы [ 2 ]

0 голосов
/ 11 февраля 2015

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

Вам нужно сделать (в приведенном ниже примере я использовал http://localhost:3000/ это URL, на котором была моя страница, ваш будет / может отличаться. Например: http://www.myamazingsite.com/homepage/):

window.location.href = "http://localhost:3000/" + this.value;

Ниже приведен мой фрагмент кода, который отлично работает для меня. Я читаю и ссылаюсь на документацию Jquery ui Datepicker (http://api.jqueryui.com/datepicker/), а также, после исследования, я обнаружил еще несколько примеров, на которые уже дан ответ на stackoverflow, что очень похоже на то, что я сделал: ( URL изменения календаря при выборе с датчиком выбора jQuery UI ).

  $("#datepicker")
    .datepicker({
      defaultDate: parsedDate,
      beforeShowDay: $.datepicker.noWeekends,
      dateFormat: "yy/mm/dd",
      onSelect: function(parsedDate) {
        $(this).change();
      }
    })
    .change(function() {
      window.location.href = "http://localhost:3000/" + this.value;
    });

Наконец, parsedDate - это переменная, которую я создал выше

var parsedDate = $.datepicker.parseDate('yy/mm/dd');

Шаги: 1: вам нужно использовать событие OnSelect, когда вы выбираете одну из дат пользовательского интерфейса Jquery. 2. Вам нужно сделать: window.location.href , который используется для перенаправления страницы.

0 голосов
/ 19 октября 2010

Полагаю, вы можете в этом случае.

Почему вы хотите изменить href? Ссылки datepicker работают с событием click, поэтому при нажатии на ссылку он не использует href, но сначала выполняет javascript. И если этот скрипт возвращает false, атрибут href никогда не будет прочитан (что, вероятно, имеет место, потому что URL не получает «#» в конце).

Если скрипт вернет true, ссылка будет выполнена.

Google прочтет эти ссылки, хотя, если они куда-то ведут (поскольку насколько я знаю, индексирующие роботы игнорируют JavaScript). Это то, чего вы хотите достичь?

...