var AddFcqdwin=new Ext.Window({
title:"新增发车清单",
width:800,
height:650,
plain:true,
iconCls:"addicon",
resizable:false,
defaultType:"textfield",
labelWidth:10,
  closeAction : 'hide',
  closable:false,
modal: 'true',  
buttonAlign:"center",
items:[AddFcqdForm],
listeners:{
"show":function()
{
AddFcqdForm.getForm().reset();
//--------------------------------------------------------------NUll
Ext.Ajax.request({
url:'DATA/UserInfo/LoadUserInfo.aspx',
success:function(response){
AddFcqdForm.getForm().findField("gsjbr_add").setValue(response.responseText);  
}
  
});
}
},
html:"<iframe id='myFrame' name='myFrame' width='800' height='600'src='URL/Fhxx/fcqd_print.aspx?fhqdh="+Ext.getCmp("fhqdh_add").getValue()+"' ></iframe>",buttons:[{
text:"预览(O)",
id:"printpre",
minwidth:70,
handler:function()
{   
var fhqdh = Ext.getCmp("fhqdh_add").getValue();
  Ext.get("myFrame").dom.contentWindow.ReYoPrint.Preview();//调用iframe中的第三方打印控件打印
  }
}

解决方案 »

  1.   

    ext 不会用。
    但是简单得js这样写。var ifr=document.getElementById("myFrame").contentDocument;
    ifr.getElementById("lable1").value("发车单号")
    //上面一句不成就换下一个
    ifr.document.getElementById("lable1").value("发车单号")
      

  2.   

    如果是点击预览的时候,给label赋值,完全可以直接取到发车单号赋值label啊。
    调用document.getElementById("label").value = ""就可以了。如果是弹出窗口的同时,把发车单的号码显示在label就有难度了。你看是不是可以把发车单号存在一个js的全局变量,暂时记为m_fachehao中。弹出窗口的同时或弹出之前,为这个变量赋值。
    然后为你的iframe页面的body的onLoad定义如下:
    <bodyonLoad="InitEvent()">
    .....<label id="label1"/>
    </body>
    <script type="text/javascript">
    function InitEvent(){
    document.getElementById("label").value = parent.m_fachehao;
    }
    </script>
    这样子,iframe加载完毕的时候,发车单号也填入label中了。好不好用,还得自己尝试一下吧。up一下。
      

  3.   

    传值 刷新iframe 已经可以 但是调用第三方打印控件不行,只能用print()document.frames.myFrame.print();//如果用这个可以打印
    document.frames.myFrame.ReYoPrint.Preview(); //如果用这行的话就发生加载控件失败 为何?
      

  4.   

    我找到了“EXTJS内使用ACTIVEX控件引起崩溃问题的解决方法
    详细出处参考:http://www.jb51.net/article/22808.htm”好像跟这个的问题是一样的
    但是以下这个方法不会使用,谁给解释一下:谢谢//@AcitveXObjectID: 要查找的节点范围,从此节点一下查找待删除的ActiveX。 
    //@ContianerID: 要删除的ActiveX控件ID。 
    function ActiveXKiller(AcitveXObjectID,ContianerID){ 
    var ce=document.getElementById(ContianerID); 
    if (ce){ 
    var cce=ce.children; 
    for(var i=0;i<cce.length;i=i+1){ 
    if(cce[i].id==AcitveXObjectID){ 
    ce.removeChild(cce[i]);