jQuery的 - 从IFRAME

问题描述:

禁用/删除的JavaScript我有我的页面中的iframe用下面的代码:jQuery的 - 从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> 
... 

基本上它是打印在表格的页面提交,或者如果我有 “打印= 1 “在URL中,我发送”print = 0“,因为我不想打印iframe。

所以我想禁用此部分或删除这部分的形式使用jQuery我的父页面。

有没有什么方法来禁用从IFRAME删除它的打印功能或?

谢谢!

+0

您是否有权访问iframe? –

+0

没有,在iframe的来源是不是我的网站 –

+0

无需访问源代码,你不能做通过JavaScript任何由于CORS限制 –

如果不希望被打印iframe部分则使用的打印介质查询@media print隐藏该iframe在打印过程中

@media print { 
    iframe { 
     display: none; 
    } 
} 
+0

我不想打印,iframe运行'window.print();'如果您在他内部提交表单,我想提交此表单并禁用打印 –

最后呢,我发现如何提交表单不打印的页面, 我只是从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" 
    }); 
});