【发布时间】:2018-10-10 09:02:38
【问题描述】:
我的 aspx 页面中有 Ajax 分级控制。当我使用 javascript 打印页面时,评级控件未出现在打印页面或打印预览中。有人对此有解决方案吗? 这是我的评级控制标签
<ajaxToolkit:Rating ID="rtDriverRating" AutoPostBack="false" runat="server" MaxRating="5" StarCssClass="Star" WaitingStarCssClass="WaitingStar" EmptyStarCssClass="Star" FilledStarCssClass="FilledStar" ReadOnly="true"></ajaxToolkit:Rating>
这是我的 Javascript 打印功能:
function printdiv(printpage) {
var headstr = "<html><head><title></title></head><body>";
var footstr = "</body>";
var newstr = document.all.item(printpage).innerHTML;
var oldstr = document.body.innerHTML;
document.body.innerHTML = headstr + newstr + footstr;
window.print();
document.body.innerHTML = oldstr;
//window.location.reload();
return false;
}
这是我在检查页面时得到的:
<a href="javascript:void(0)" id="ContentPlaceHolder1_rtDriverRating_A" title="5" style="text-decoration:none"><span id="ContentPlaceHolder1_rtDriverRating_Star_1" class="FilledStar" style="float:left;">&nbsp;</span><span id="ContentPlaceHolder1_rtDriverRating_Star_2" class="FilledStar" style="float:left;">&nbsp;</span><span id="ContentPlaceHolder1_rtDriverRating_Star_3" class="FilledStar" style="float:left;">&nbsp;</span><span id="ContentPlaceHolder1_rtDriverRating_Star_4" class="FilledStar" style="float:left;">&nbsp;</span><span id="ContentPlaceHolder1_rtDriverRating_Star_5" class="FilledStar" style="float:left;">&nbsp;</span></a>
以下是评分控件在页面上的显示方式 Ajax Rating control on the page
编辑:添加我的 css 代码:
.Star {
background-image: url(/Content/imgs/images/Star.gif);
height: 17px;
width: 17px;
}
.WaitingStar {
background-image: url(/Content/imgs/images/WaitingStar.gif);
height: 17px;
width: 17px;
}
.FilledStar {
background-image: url(/Content/imgs/images/FilledStar.gif);
height: 17px;
width: 17px;
}
【问题讨论】:
-
这似乎是一个样式/css 问题。我认为星星是背景图像,您是否在打印预览中标记了“打印背景图像”?
-
是的,背景图片。我启用了背景图形,但也没有解决问题 这是我的 css 代码 .Star { background-image: url(/Content/imgs/images/Star.gif);高度:17px;宽度:17px; } .WaitingStar { 背景图片: url(/Content/imgs/images/WaitingStar.gif);高度:17px;宽度:17px; } .FilledStar { 背景图像: url(/Content/imgs/images/FilledStar.gif);高度:17px;宽度:17px; }
-
我现在不能尝试,但我可以向你推荐一个字体很棒的替代方案,这是一个例子:codepen.io/jamesbarnett/pen/vlpkh
-
谢谢@Baro。你的回答对我帮助很大。缺少的部分是我必须在 css 类的背景属性中添加 no-repeat !important
标签: javascript asp.net ajax ajaxcontroltoolkit