作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想将日期选择器中的日期转换为链接。我怎样才能做到这一点?我知道它有 onSelect
,但是当用户将鼠标悬停在日期上时,它不会向用户提供视觉线索。
我尝试了以下操作,但它似乎确实执行了回调函数。使用 jQuery UI v1.9.2 和 jQuery v1.8.1。
$(document).ready(function () {
$("#datepicker").datepicker({
renderCallback: function ($td, thisDate, month, year) {
alert('hi');
}
});
});
更新
即使解决方法很容易实现,我还是决定采用 Kevin B 的方法。这就是全部内容。
var old_generateHTML = $.datepicker._generateHTML;
$.datepicker._generateHTML = function () {
function getMonth(s) {
var months = {
'January': '01', 'February': '02', 'March': '03', 'April': '04', 'May': '05', 'June': '06',
'July': '07', 'August': '08', 'September': '09', 'October': '10', 'November': '11', 'December': '12'
}
return months[s];
}
var ret = old_generateHTML.apply(this, arguments);
var month = ret.replace(/^.*month">([a-z]+)<\/span.*$/i, "$1");
var year = ret.replace(/^.*year">([0-9]{4})<\/span.*$/i, "$1");
ret = ret.replace(/href="#">([0-9]{1,2})<\/a>/g, "href=\"process.php?date=" + getMonth(month) + "/$1/" + year + "\">$1</a>");
return ret;
};
$(document).ready(function () {
$("#datepicker").datepicker();
});
最佳答案
我建议扩展 generateHTML
方法,以便每次生成日期选择器的 html 时,都会创建您的链接。
演示:http://jsfiddle.net/C4jWz/1/
var old_generateHTML = $.datepicker._generateHTML;
$.datepicker._generateHTML = function() {
var ret = old_generateHTML.apply(this,arguments);
ret = ret.replace(/href="#">([0-9]{1,2})<\/a>/g, "href=\"process.php?day=$1\">$1</a>");
return ret;
};
//<a class="ui-state-default ui-state-hover" href="#">13</a>
$( "#datepicker" ).datepicker();
这个只能获取日期,月/年可以用同样的方式获取。
关于jquery - 如何将日期渲染为 jQuery 日期选择器的链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13611917/
我是一名优秀的程序员,十分优秀!