我有日期选择器,其图像正在使用 jquery 设置在 .js 文件中。
可以像我在 buttonImage 中所做的那样删除前导 / 吗?下面的 jsFiddle 表明 Chrome 应该能够处理这个问题,所以我想知道我是否做错了什么。
在 .datePicker() 中设置 buttonImage 时,如果位置以“/”开头,则 Chrome 找不到该图像(Chrome DevTools 中的幕后 404)。这些是下面有问题的 .datePicker() 中的行:
buttonImage: "content/images/cal.png"
, //适用于所有浏览器buttonImage: "/content/images/cal_editor.jpg"
, //不能在
Chrome 中工作,但在 IE、Firefox 中工作
但是,当我尝试在一个简单的 jsFiddle 中复制它时,如果没有正斜杠,它在 Chrome 中不起作用:http: //jsfiddle.net/tonyleif/3z865d2r/2/。
从上面的jsFiddle:
buttonImage: "/img/initializing.png"
//在所有浏览器中工作buttonImage: "img/initializing.png"
//不适用于所有浏览器
这是在我的应用程序中调用的完整 .datePicker 函数:
var $calendarButton = $(me).datepicker({
dateFormat: "dd-M-yy",
showOn: "button",
buttonImage: "content/images/cal.png", //WORKING IN ALL BROWSERS
//buttonImage: "/content/images/cal.png", //NOT WORKING IN CHROME but works in IE, Firefox
buttonImageOnly: true,
beforeShowDay: oneDayOnlyMethod,
altField: alternateField,
onSelect: function() {
if ($(me).hasClass('searchItem')) {
APP.SearchTable.AddDateFilter($(me));
}
var pairedName = $(me).attr('paired-date-picker');
if (pairedName !== undefined && pairedName.length > 0) {
var d = $(this).val();
if (isValidDate(d.valueOf())) {
var pairedControl = $('#' + pairedName);
if (pairedControl.val() == "" || pairedControl.val() == "DD-MMM-YY") {
pairedControl.val(d);
}
}
}
$(me).change();
}
}).next(".ui-datepicker-trigger").addClass("calendar-button");
如果您需要更多代码,请告诉我。我最初试图不包含太多文本。
我应该注意的另一件事是,当我使用 Visual Studio 2013 在本地运行站点时,我没有这个问题。它仅在我发布到服务器时发生。