在我的網頁我有一個圖像,我想用JavaScript打印它,但在JS圖像的ID始終爲空。請告訴我該怎麼做..圖片返回值「空」使用JS
<div class="reportFieldsDiv" runat="server" clientidmode="Static">
<table style="width: 400px; margin: 10px 0px 0px 10px; border: 1px solid black">
<tr>
<td>
<img src="~/Images/Layout/TestBadge.jpg" alt="ID Badge" id="mainImage"/>
</td>
</tr>
</table>
<div style="border: 0px solid black;padding:5px 0px 0px 280px">
<asp:Button ID="btnPrint" runat="server" Text="Print" Width="140px" />
</div>
</div>
<script type="text/javascript">
window.onload = function() {
var image = document.getElementById('mainImage');
printImage(image);
};
function printImage(image) {
var printWindow = window.open('', 'Print Window', 'height=400,width=600');
printWindow.document.write('<html><head><title>Print Window</title>');
printWindow.document.write('<img id="mainImage" src=\'..\Images\Layout\TestBadge.jpg');
printWindow.document.write(image.src);
printWindow.document.write('\' /></body></html>');
printWindow.document.close();
printWindow.print();
}
</script>
我相信,如果你」 ASP.NET Web表單會分配一個不同的ID重新使用'runat = server'。使用瀏覽器的檢查員檢查圖像的實際ID。 – 2014-11-04 19:40:08
這是一個快速解決方法,謝謝你,但現在我想在彈出窗口中打開我的圖像並激發打印事件,但由於某種原因,圖像不會出現,你可以幫我嗎? – 2014-11-04 19:43:11
'Runat = Server'不適用於「傳統ASP」,除了Microsoft之外,它不會起作用。不要這樣做,如果你不是絕對需要它 - 並考慮嘗試另外的設計。如果你擺脫了「runat =服務器」,我懷疑它「可能正常工作」。恕我直言...... – FoggyDay 2014-11-04 19:44:21