高分!求iframe中src动态赋值,解决方法。

时间:2022-07-13 15:15:52
今天在csdn上看了一下午帖子,也没看明白。本人太菜,很多大虾给别人的回复都写得一半一半的,实在理解不了。
把自己的问题发出来,请大家帮忙看一下。
前台的:
<IFRAME style="WIDTH: 100%; HEIGHT: 100%; WIDH: 100%" id="f_test" name="f_test" src="test_list.aspx" frameBorder="0" width="100%" scrolling="auto" height="100%" runat="server"></IFRAME>

iframe指向的页面,需要传入参数。
现在想动态的改变src的地址。就是想让src="test_list.aspx?id=xxx"中的“xxx”能够动态的改变。
请大家多帮忙,能把完整点的方法说一下。我看了半下午帖子。。都迷糊了。

22 个解决方案

#1


document.getElementById("f_test").src = "test_list.aspx?id=113123"

#2


你有很多个frame么?还是单单一个?

#3


就一个,指向另外一个单独做的页面。需要把这个页面的商品号,传递给下一个页面,从而把对应的商品信息取出来。

#4


帮顶

#5


假设你的iframe是在 test.aspx中包含的 你是想取 test.aspx?id=999
那么在
<IFRAME style="WIDTH: 100%; HEIGHT: 100%; WIDH: 100%" id="f_test" name="f_test" src="" frameBorder="0" width="100%" scrolling="auto" height="100%" runat="server"></IFRAME>
<script>
//--获取URL参数
function GetQueryString(name)   
{   
  var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");   
  var r = window.location.search.substr(1).match(reg);   
  if(r!=null)
    return unescape(r[2]);   
  return null;
}
document.frames['f_test'].src = "test_list.aspx?id=" + GetQueryString('ID');
</script>

#6


to:cpp2017
iframe在的那个页面,地址test.aspx?id=123。
我怎么能动态的把id的值123,给传到test_list.aspx?id=这里呢?
谢谢

#7


帮顶

#8


document.getElementById("f_test").src = "test_list.aspx?id="+ 变量

#9


如果是服务器变量

后台声明:
protected string KeyID;


document.getElementById("f_test").src = "test_list.aspx?id=<%=this.KeyID%>"

#10


<IFRAME style="WIDTH: 100%; HEIGHT: 100%; WIDH: 100%" id="f_test" name="f_test" src="test_list.aspx" frameBorder="0" width="100%" scrolling="auto" height="100%" runat="server"></IFRAME> 

把这段代码在后太动态生成,不就可以取得她的src了吗

#11


写一个详细的东西给你

假设你的父页面是 a.aspx
子页面是b.aspx
那么
A一定是可以得到b想要的ID
假设以属性的形式给出
a.aspx.cs中
protected string ChildID
{
//这个属性值可以根据你的需要另外写,但是一定要用protected或是publish
return "123";
}
a.aspx中
<body onload="this.document.getElementById('<%= this.f_test.ClientID %>').src = 'test.aspx?id=<%= ChildID %>'">


当a.aspx页面加载完之后,就会加载框架页

#12


a.aspx中
<body onload="document.getElementById('<%= this.f_test.ClientID %>').src = b.aspx?id=<%= ChildID %>'">

#13


慕白兄的方法,我实现了。多谢。
我原来找到一个类似的,他当时说的是这样的:
<IFRAME id=iFrameContent marginWidth=0 marginHeight=0 
  src="pro/iportfolio.aspx" frameBorder=0 
  width=823 height=224></IFRAME>
<script language=javascript>
var ifa = document.all("iFrameContent")
ifa.src = "pro/iportfolio.aspx?id"+"<% =ID %>"
</script>
在CS文件中
Public string ID="0";
在函數中實現
ID = "你需要的ID號"

结果,我按照我的改完,带进程序后,页面左下角那里报错,好像是ifa为null。。我也不知道为什么。


多些大家帮忙,其他的方法我也都去试验下。揭帖先,多谢了。

#14


js 那种 方式不是更好吗 不用服务端变量

#15


ID是变的,肯定是要用服务器变量的,再说服务器变量是一次发送到客户端,再怎么处理,服务器端肯定是要运算的

#16


贴子回复次数大于跟给分次数?
这什么意思?我怎么结不了?几天不来发帖,又有新政策了?

#17


我只是先用了cpp2017的方法,因为比较着急,其他的还没试验。没有别的意思,各位给的方法我都回去好好学习一下,最近刚接触这个,要恶补一下啦。
谢谢

#18


TO:  zyug(LovlyPuppy) ( ) 信誉:100    Blog   加为好友  2007-04-24 16:41:34  得分: 0  
 
 
   ID是变的,肯定是要用服务器变量的,再说服务器变量是一次发送到客户端,再怎么处理,服务器端肯定是要运算的
  
难道没看到我前面发的.
 
假设你的iframe是在 test.aspx中包含的 你是想取 test.aspx?id=999
那么在
<IFRAME style="WIDTH: 100%; HEIGHT: 100%; WIDH: 100%" id="f_test" name="f_test" src="" frameBorder="0" width="100%" scrolling="auto" height="100%" runat="server"></IFRAME>
<script>
//--获取URL参数
function GetQueryString(name)   
{   
  var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");   
  var r = window.location.search.substr(1).match(reg);   
  if(r!=null)
    return unescape(r[2]);   
  return null;
}
document.frames['f_test'].src = "test_list.aspx?id=" + GetQueryString('ID');
</script>

#19


同意楼上的

#20


如果ID相同,你的方法是不错

#21


终于结了,刚才貌似分给重复了。。。结不了
不好意思。

#22


xuexi

#1


document.getElementById("f_test").src = "test_list.aspx?id=113123"

#2


你有很多个frame么?还是单单一个?

#3


就一个,指向另外一个单独做的页面。需要把这个页面的商品号,传递给下一个页面,从而把对应的商品信息取出来。

#4


帮顶

#5


假设你的iframe是在 test.aspx中包含的 你是想取 test.aspx?id=999
那么在
<IFRAME style="WIDTH: 100%; HEIGHT: 100%; WIDH: 100%" id="f_test" name="f_test" src="" frameBorder="0" width="100%" scrolling="auto" height="100%" runat="server"></IFRAME>
<script>
//--获取URL参数
function GetQueryString(name)   
{   
  var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");   
  var r = window.location.search.substr(1).match(reg);   
  if(r!=null)
    return unescape(r[2]);   
  return null;
}
document.frames['f_test'].src = "test_list.aspx?id=" + GetQueryString('ID');
</script>

#6


to:cpp2017
iframe在的那个页面,地址test.aspx?id=123。
我怎么能动态的把id的值123,给传到test_list.aspx?id=这里呢?
谢谢

#7


帮顶

#8


document.getElementById("f_test").src = "test_list.aspx?id="+ 变量

#9


如果是服务器变量

后台声明:
protected string KeyID;


document.getElementById("f_test").src = "test_list.aspx?id=<%=this.KeyID%>"

#10


<IFRAME style="WIDTH: 100%; HEIGHT: 100%; WIDH: 100%" id="f_test" name="f_test" src="test_list.aspx" frameBorder="0" width="100%" scrolling="auto" height="100%" runat="server"></IFRAME> 

把这段代码在后太动态生成,不就可以取得她的src了吗

#11


写一个详细的东西给你

假设你的父页面是 a.aspx
子页面是b.aspx
那么
A一定是可以得到b想要的ID
假设以属性的形式给出
a.aspx.cs中
protected string ChildID
{
//这个属性值可以根据你的需要另外写,但是一定要用protected或是publish
return "123";
}
a.aspx中
<body onload="this.document.getElementById('<%= this.f_test.ClientID %>').src = 'test.aspx?id=<%= ChildID %>'">


当a.aspx页面加载完之后,就会加载框架页

#12


a.aspx中
<body onload="document.getElementById('<%= this.f_test.ClientID %>').src = b.aspx?id=<%= ChildID %>'">

#13


慕白兄的方法,我实现了。多谢。
我原来找到一个类似的,他当时说的是这样的:
<IFRAME id=iFrameContent marginWidth=0 marginHeight=0 
  src="pro/iportfolio.aspx" frameBorder=0 
  width=823 height=224></IFRAME>
<script language=javascript>
var ifa = document.all("iFrameContent")
ifa.src = "pro/iportfolio.aspx?id"+"<% =ID %>"
</script>
在CS文件中
Public string ID="0";
在函數中實現
ID = "你需要的ID號"

结果,我按照我的改完,带进程序后,页面左下角那里报错,好像是ifa为null。。我也不知道为什么。


多些大家帮忙,其他的方法我也都去试验下。揭帖先,多谢了。

#14


js 那种 方式不是更好吗 不用服务端变量

#15


ID是变的,肯定是要用服务器变量的,再说服务器变量是一次发送到客户端,再怎么处理,服务器端肯定是要运算的

#16


贴子回复次数大于跟给分次数?
这什么意思?我怎么结不了?几天不来发帖,又有新政策了?

#17


我只是先用了cpp2017的方法,因为比较着急,其他的还没试验。没有别的意思,各位给的方法我都回去好好学习一下,最近刚接触这个,要恶补一下啦。
谢谢

#18


TO:  zyug(LovlyPuppy) ( ) 信誉:100    Blog   加为好友  2007-04-24 16:41:34  得分: 0  
 
 
   ID是变的,肯定是要用服务器变量的,再说服务器变量是一次发送到客户端,再怎么处理,服务器端肯定是要运算的
  
难道没看到我前面发的.
 
假设你的iframe是在 test.aspx中包含的 你是想取 test.aspx?id=999
那么在
<IFRAME style="WIDTH: 100%; HEIGHT: 100%; WIDH: 100%" id="f_test" name="f_test" src="" frameBorder="0" width="100%" scrolling="auto" height="100%" runat="server"></IFRAME>
<script>
//--获取URL参数
function GetQueryString(name)   
{   
  var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");   
  var r = window.location.search.substr(1).match(reg);   
  if(r!=null)
    return unescape(r[2]);   
  return null;
}
document.frames['f_test'].src = "test_list.aspx?id=" + GetQueryString('ID');
</script>

#19


同意楼上的

#20


如果ID相同,你的方法是不错

#21


终于结了,刚才貌似分给重复了。。。结不了
不好意思。

#22


xuexi