日期:2014-05-20  浏览次数:20613 次

点击页面左边的用户控件的button,如何在相同页面右边的iframe中显示结果?
<div   id= "query "   >
    <uc1:CollectMissionQuery   ID= "CollectMissionQuery1 "   runat= "server "     />
</div>
<div   id= "right ">
<iframe   id= "display "   src= "a.aspx "> </iframe>
</div>
页面DIV布局没有问题,用户控件也注册了,就是CollectMissionQuery,这个控件有一个button,点击button,在IE中弹出新的一页,现在我不想要这种结果,我要在同一页面的右面显示button所指向的页面!
怎么办?。。。。。。。

------解决方案--------------------
按钮如果不需要回发,就不要使用回发按钮。

如果你不是那个开发用户控件的程序员,就不要拿别人的控件说是非,自己写一个“左边”控件然后根据你的控件提问。如果你就是开发这个用户控件的程序员,更不要拿控件说是非,不需要与服务器交互的按钮应该是你从html中学来的而不是asp.net学来的。
------解决方案--------------------
<a target= "mainpage " href= "a.aspx "> </a>
mainpage是你要在那个要显示的iframe的ID
试试看
------解决方案--------------------
this.Button1.Attributes.Add( "onclick ", "display.scr= "+url);

------解决方案--------------------
this.Button1.Attributes.Add( "onclick ", "display.src= "+url);试试 ,可以加分吗?
------解决方案--------------------
this.Button1.Attributes.Add( "onclick ", "display.src= "+url);要放到page_load方法中
------解决方案--------------------
有两个解决办法:
第一个:要求编写该用户控件的程序员在控件中增加一个属性target
如: <uc1:CollectMissionQuery ID= "CollectMissionQuery1 " target= "display " runat= "server " />
然后让他实现点击事件将网页显示在target对应的frame中。
第二:如果他不合作,那么你可以向领导提出要求。不建议你采用一下办法处理
查看网页源代码(IE中),找到你那个控件生成的源码,找到那个点击按钮的名称或者ID
如为: <input type= "button " id= "CollectMissionQuery1_btn_query ".....
在刚才那个控件下面写如下:
<script language= "javascript ">
document.getElementById( "CollectMissionQuery1_btn_query ").onclick = goclick;
</script>

goclick是一个js函数,用于在对应的frame里显示页面

------解决方案--------------------
this.Button1.Attributes.Add( "onclick ",display.ClientID+ ".location=你的url ");
你的iframe作为服务器控件