2011-05-11 28 views
0

jQuery的日期选择器插件工作,但我想有onSelect触发一个功能,打开一个新的选项卡页面。jQuery的日期选择器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到功能(链接){window.open( '/ EN /行程/' +链接, '_self') ; },然后由于某些未知的原因,它会打开一个带有相应DATE的URL而不是相应的链接。

+0

你能告诉我们一些适当的源代码,而不是随机的线段?到目前为止,你已经遍布全球,请更具体地了解什么是不工作以及你想实现什么。 – DarthJDG 2011-05-11 16:46:46

+0

datepicker works =它在调用时打开并突出显示在var日期中定义的日期。 如果我点击一个突出显示的日期,它应该打开一个新的URL与我刚刚点击=工程的日期。 如果我将OnSelect函数更改为使用var链接而不是日期,它不起作用。 – user749073 2011-05-11 16:52:53

回答

0

这里是ONSELECT处理程序的语法:

function(dateText, inst) 

和解释从文档:

这个函数接收选择 日期作为文本和日期选择器 实例作为参数。

所以,当你说:

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

所以作为参数传递链接实际上不是你认为它不过是处理器内部的上下文更改的数组。即链接指的是如上所述的选定日期。

相关问题