如何将查询字符串传递给HTML框架?
我在index.html中有以下HTML:
<HTML>
<FRAMESET rows="200, 200" border=0>
<FRAMESET>
<FRAME name=top scrolling=no src="top.html">
<FRAME name=main scrolling=yes src="/cgi-bin/main.py">
</FRAMESET>
</FRAMESET>
</HTML>
框架src是main.py,它是一个python cgi脚本。这是在main.py:
import cgi
form = cgi.FieldStorage()
test = form.getvalue('test')
假设我使用index.html调用url?test = abcde。如何将查询字符串传递给main.py?这可以使用javascript吗?
答案 0 :(得分:1)
This应该可以帮助您从查询字符串中获取变量,您可以使用它来构建自定义queryString。或者,如果您想将查询字符串原样传递给框架,那么您可以更简单地使用它。
var queryString = window.location.href.split('index.html?')[1];
现在,至于将其传递给框架,它应该很简单,因为您只需将查询字符串附加到框架元素的src
属性。
答案 1 :(得分:0)
不确定这是否可行(未经测试),但也许您可以使用jQuery加载查询参数onload?这是一个概念证明:
<html>
<head>
//Load jquery here, then do the following:
<script type="text/javascript">
$(document).ready(functin(){
// navigator.href holds the current window's q params
// you will have to write this funciton (fairly easy).
var q = get_query_paramenters(navigator.href);
var top = $("<frame name=top scrolling=no src='top.html'></frame>"),
main = $("<frame name=main scrolling=yes></frame>");
main.attr("src", "/cgi-bin/main.py?" + q);
$("#myframeset").append(top).append(main);
});
</script>
</head>
<body>
<FRAMESET rows="200, 200" border=0>
<FRAMESET id='myframeset'>
</FRAMESET>
</FRAMESET>
</body>
</html>
希望有所帮助。