<frameset name="mainform" id="mainform" rows="10%,78%,12%" border="1" backgroung="2ddd921f0e349f9e8cc2694e50cc40b3.jpg">
<frame name="title" id="title" src="title.aspx" scrolling="no" noresize="noresize"/>
<frame name="middle"id="middle" src="../InfoPage/InfoMain.aspx" noresize="noresize"/>
<frame name="foot" id="foot" src="foot.aspx" scrolling="no" frameborder="0" noresize="noresize"/>
title.aspx页面中有一个lable控件<asp:Label ID="Label1" runat="server" Text="信息"></asp:Label>
foot.aspx页面中有一个ImageButton控件
如何用JS来实现点击ImageButton控件改变lable控件的Text的值
布局页? 这也太麻烦了。。。
能不能实现呀
@小样方块: 当然能实现。。。这是这个东西真是建议淘汰掉。。
http://blog.csdn.net/guoquanyou/article/details/8678383
@小样方块: 我不是大神。我不喜欢留QQ 有问题就在博客园问好了。。
几个iframe跨域吗? 如果跨域,需要先解决跨域问题(设置header等)。不跨域直接js 就好了
title.aspx和foot.aspx是同等级别的,JS怎么写呢
可以通过 window.frames["title"].document
来获取到框架文档。
Response.Write("<script> window.frames['title'].document.getElementById('labtitle').Text='应用';</script>");
我是这样写的,怎么没反应呢
var frameDocument = window.frames['title'].contentDocument;
<script type="text/javascript">
function ShowExit(){
var frameDocument = window.frames['title'].contentDocument;
frameDocument.getElementById('labtitle').setAttribute('Text','应用');
}
</script>
这个JS写的对不对,如果对的话,用Response.Write()在click事件怎么调用呢
@小样方块: F12看控制台出错不,Response.Write("<script>...</script>")
frameset 已经不建议使用了。应该使用iframe
如果想改变iframe里的内容,建议在iframe定义方法,通过调用iframe内定义的方法实现操作。
如果操作的内容较多,关系比较复杂,建议通过 发布/订阅模式 来实现。
分步实现对你比较适合。
1.在title.aspx这个页面里面添加button,添加并实现方法 ChangeText,用来更改lable内容;
2.在frameset这个页面里面添加button,添加并实现方法ChangeSubFramText,用来调用frame页面内方法的ChangeText。技术点:如何调用frame子页面方法;
3.在foot.aspx页面中调用框架页面方法ChangeSubFramText。技术点:如何调用frame父页面方法。
终于解决了,原来是lable控件的问题
http://blog.csdn.net/myskysea/article/details/6157450