3

我有一个test.html:

<form action="/cgi-bin/test.py" method="GET">
<input type="text" name="search">
<input type="submit" value="Submit">
</form>
<div id="res"></res>

还有一个python脚本test.py:

#....
print Result
#....

我不想在 test.py 上打印结果,而是将其返回到 test.html 并将其写入 id 为 res 的 div 中......我该怎么做?

4

3 回答 3

4
<form id="myform">
<input id="my_text">
<button id="submit_btn">
</form>
<div id="result">
</div>
<script>
//you need to use jquery for this part
$("#submit_btn").click( function() {
    $("#result").load("/path/to/cgi?my_text="+$("#my_text").val())
})
</script>

类似的东西......(这是真正的 hacky 1 分钟帖子,未经测试,因此可能需要一些工作......

你的问题真的与 python 无关......它只是网络技术问题......如果它是一个 php 或 C# 或任何处理表单数据的东西,它会是一样的

它与 python 无关,因为你如何处理表单数据无关紧要......这只是 web 技术,它与 perl 脚本而不是 python 脚本或使用 C# 而不是 python 或其他任何东西的工作方式完全相同...您想将一些数据返回到网页...您如何获取数据实际上并不相关

<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
</head>
<body>
<form action="someother.html" method="get">
<input id="my_text">
<input type="button" id="my_button" value="click me">
</form>
<div id="result">

</div>
<script>
$("#my_button").click(function(){
     $("#result").load("");
})
</script>
</body>
</html>

这是一个示例...只需将其粘贴到file.html中并转到它并单击按钮...它只是在加载自身load(""),因此当您单击它时它应该复制页面上的数据...

于 2012-10-31T23:43:14.353 回答
1

好吧,我以这种方式理解了您的问题,也许您正在寻找其他东西,但我知道一种方法可以完全满足您的需求:Ajax。

只需向 cgi python 发出 ajax 请求并将响应放入 div 中。幸运的是,现在这很容易。

如果您对 jQuery(一个 javascript 框架)有所了解,您应该访问此链接以开始使用:http://docs.jquery.com/Tutorials:Getting_Started_with_jQuery#Rate_me: _Using_Ajax

再见

于 2012-10-31T23:31:10.070 回答
0
print "Content-type:text/html\r\n\r\n"
print "<html>"
print "<head>"
print "<title>Hello - Second CGI Program</title>"
print "</head>"
print "<body>"
print "<h2>Hello World</h2>"
print "<p>Executing HTML code from python script</p>"
print "</body>"
print "</html>"
于 2019-05-02T12:18:48.487 回答