jquery datepicker onselect простая функция - PullRequest
0 голосов
/ 11 мая 2011

Плагин jquery datepicker работает, но я бы хотел, чтобы onSelect вызывал функцию, которая открывает страницу в новой вкладке.

Плагин jquery datepicker работает, но я бы хотел, чтобы onSelect запускала функцию, которая открывает страницу в новой вкладке.

$("#dp").datepicker({
beforeShowDay: highlightDays,

//works perfectly fine

onSelect: function(dates) { window.open('/en/calendar/' + dates, '_self'); },
});

var dates = [new Date(2011, 4 - 1, 28), new Date(2011, 5 - 1, 10),];

//does not work

onSelect: function(links) { window.open('/en/trip/' + links, '_self'); },

var links = [new Link('link1'), new Link('link2'),];

JS:

$( "#toggleDP" ).click(function() { $("#dp ").datepicker('show'); });

$("#dp").datepicker({
changeMonth: true,
changeYear: true,
showOn: 'button',
showButtonPanel: true,
buttonImageOnly: true,
buttonImage: "0.gif",
dateFormat: 'yy-mm-dd',
beforeShowDay: highlightDays,
onSelect: function(dates) { window.open('/en/calendar/' + dates, '_self'); },
});


var links =[new Link('test'), new Link('test1'), ];
var dates = [new Date(2011, 4 - 1, 28), new Date(2011, 5 - 1, 10), ];
var txt = ['test','test1',];

function highlightDays(date) {
for (var i = 0; i < dates.length; i++) {
if (dates[i]-date==0) {
return [true, 'markedDay', txt[i],];
}
}
return [false, ''];
}

если бы я должен был установить onSelect на function (links) {window.open ('/ en / trips /' + links, '_self'); }, затем по неизвестным причинам открывает URL с соответствующей ДАТА, а не с соответствующей ссылкой.

1 Ответ

0 голосов
/ 11 мая 2011

Вот синтаксис обработчика onSelect:

function(dateText, inst)

И объяснение из документов:

Функция получает выбранную дату в виде текста и экземпляр средства выбора даты в качестве параметров.

Поэтому, когда вы говорите:

   onSelect: function(links) { window.open('/en/trips/' + links, '_self'); }

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

...