我的页面中有一个iframe,代码如下:
...
<script language="javascript" type="text/javascript">
function clearMessage() {
window.print();
}
$(function () {
var state=0;
if (state==1) {
window.print();
window.opener.location = window.opener.location.href;
}
var sentToPrint=0;
if (sentToPrint==1)
{
window.print();
window.opener.location = window.opener.location.href;
}
});
window.onunload = refreshParent;
function refreshParent() {
if (('1') == '1') {
window.opener.location = window.opener.location.href;
//window.opener.location = 'mainPage.aspx'
}
}
</script>
...
基本上它的作用是在表单提交上打印页面,或者如果我有 URL中的“print = 1”,在我的情况下,我发送“print = 0”,因为我不想打印iframe。
所以我想禁用这个部分或者使用jQuery从我的父页面删除这个部分。
有没有办法禁用打印功能或将其从iframe中删除?
谢谢你!答案 0 :(得分:0)
如果您不想打印iframe
部分,请使用打印介质查询@media print
在打印时隐藏该iframe
@media print {
iframe {
display: none;
}
}
答案 1 :(得分:0)
最后,我找到了如何在不打印页面的情况下提交表单, 我只是复制了iframe的输入并使用ajax
提交了表单$('#myFrame').one('load', function(){
var eventTriger = $("#myFrame").contents().find("#__EVENTTARGET").val();
var eventArgu = $("#myFrame").contents().find("#__EVENTARGUMENT").val();
var viewState = $("#myFrame").contents().find("#__VIEWSTATE").val();
var json = {
'__EVENTTARGET' : eventTriger,
'__EVENTARGUMENT' : eventArgu,
'__VIEWSTATE' : viewState
};
var request = $.ajax({
url: "url",
type: "POST",
data: json,
dataType: "html"
});
});