【问题标题】:changing href attr in jQuery UI datepicker更改 jQuery UI datepicker 中的 href attr
【发布时间】:2010-10-19 13:26:21
【问题描述】:

我正在使用 UI 日期选择器小部件,我注意到生成日历时,所有日期都在带有 href="#" 的锚标记内。是否可以将 href 更改为 dateText,或者我将 dateFormat 设置为什么?

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

提前致谢

//更新

关于如何做到这一点的任何线索?

【问题讨论】:

    标签: jquery jquery-ui attributes datepicker jquery-ui-datepicker


    【解决方案1】:

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

    为什么要更改href? datepicker 链接与单击事件一起使用,因此当单击链接时,它不会使用 href,而是首先执行 javascript。如果此脚本返回 false,则永远不会读取 href 属性(可能是这种情况,因为 URL 末尾没有得到“#”)。

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

    但是,如果它们指向某个地方,Google 会读取这些链接(因为据我所知,索引机器人会忽略 javascript)。这是你想要达到的目标吗?

    【讨论】:

    • 我收到了一份旧的活动日历,其中遍布各处。我认为使用这个日期选择器来浏览这些锚点会很好。而不是从头开始构建日历,并且不断地更新它。另外,我不关心谷歌阅读这些链接。
    【解决方案2】:

    我没有看到任何答案,这是一个非常古老的问题。但是,以供将来参考并以防万一有人遇到此问题。

    您需要这样做(在下面的示例中,我使用了http://localhost:3000/,这是我的页面所在的网址,您的网址将/可能会有所不同。例如:http://www.myamazingsite.com/homepage/):

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

    下面是我的完整代码 sn-p,它非常适合我。我阅读并参考了 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 UI 的日期之一时,您需要使用 OnSelect 事件。 2. 你需要做的是:window.location.href 用于重定向页面。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多