Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将查询字符串传递到HTML框架?_Javascript_Python_Html_Cgi - Fatal编程技术网

Javascript 如何将查询字符串传递到HTML框架?

Javascript 如何将查询字符串传递到HTML框架?,javascript,python,html,cgi,Javascript,Python,Html,Cgi,如何将查询字符串传递给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&

如何将查询字符串传递给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>
假设我使用index.html?test=abcde调用url。如何将查询字符串传递到main.py?这是否可以使用javascript实现?

应该可以帮助您从查询字符串中获取变量,您可以使用该字符串构建自定义查询字符串。或者,如果希望将查询字符串原样传递给框架,则可以采用更简单的方式

var queryString=window.location.href.split('index.html?')[1]


现在,对于将其传递到框架,应该很容易,因为您只需将查询字符串附加到框架元素的
src
属性。

不确定这是否有效(未测试),但也许您可以使用jQuery在加载时加载查询参数?以下是概念证明:

<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>

//在此处加载jquery,然后执行以下操作:
$(文档).ready(functin(){
//navigator.href保存当前窗口的q参数
//你必须写这个函数(相当简单)。
var q=get\u query\u参数(navigator.href);
var top=$(“”),
main=$(“”);
main.attr(“src”,“/cgi-bin/main.py?”+q);
$(“#myframeset”).append(顶部).append(主要);
});

希望这能有所帮助。

您绝对不应该使用cgi。它已经过时了,python比cgi强大得多。您可能想看一看微框架,如或多功能框架。@dav1d谢谢您的推荐,但我正在为我们现有的一个旧的简单web工具添加功能,因此我仅限于现有的功能。谢谢,这让我找到了正确的解决方案。我使用一个onload事件来调用一个javascript方法,该方法为frame src属性构建一个自定义查询字符串。
<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>