1

我在玩UI日期选择器小部件,我注意到当生成日历时,所有日期都在href="#"的锚标记中。是否有可能将href更改为dateText,或者我将dateFormat设置为什么?在jQuery UI datepicker中更改href attr

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

在此先感谢

//更新

如何做到这一点任何线索?

回答

0

我想你可以在这种情况下。

为什么要改变href? datepicker链接工作与点击事件,所以当点击链接时,它不会使用href,但它首先执行JavaScript。如果此脚本返回false,则href-attribute永远不会被读取(可能是这种情况,因为URL末尾没有得到“#”)。

如果脚本返回true,则链接将被执行。

谷歌会阅读这些链接,但如果它们导致某处(因为索引 - 机器人忽略javascript,据我所知)。那是你想要达到的目标吗?

+0

我已经收到一个旧的事件日历,锚点遍布整个。我认为使用这个日期选择器浏览这些锚点会很好。而不是从头开始建立日历,并不断更新它。另外,我不关心谷歌阅读这些链接。 – Gerald 2010-10-19 14:05:03

0

我没有看到任何答案,这是一个非常古老的问题。但是,为了将来的参考和incase任何人都会遇到这个问题。

你需要(下面我用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上得到了回复,这与我所做的非常相似:(Calendar change URL on select with jQuery UI datepicker)。

$("#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:您需要使用时,您选择的jQuery用户界面的日期之一的ONSELECT事件。 2.您需要做的:window.location.href这是用来重定向页面。