一旦表单由 JQuery 请求提交,我试图在 python 脚本中获取一些表单字段。这是我正在使用的代码:
片段。
<title>Line Chart</title>
<script>
function clickme() {
drawgraph();
}
</script>
<script>
ajaxResponse = ".";
</script>
<script src="Chart.js"></script>
<script src="jquery.js"></script>
<script>
function drawgraph() {
function handleResponse(response) {
ajaxResponse = response;
}
draw(handleResponse);
};
function draw(handleResponse) {
$.ajax({
url: "/currentcost.py",
data: $("form[name='frm']").serialize(),
success: function(response){
handleResponse(response);
}
});
}
</script>
<script>
function alertbox() {
alert(ajaxResponse);
}
</script>
<script>
我的表单名为 frm,有两个选择框,分别名为 dt 和 tm
调用的 Python 脚本是:
import MySQLdb
import cgi, cgitb
import os
fmeError: global name 'environ' is not defined
from cgi import parse_qs, escape
def index(req):
# Returns a dictionary containing lists as values.
d = parse_qs(os.environ['QUERY_STRING'])
# In this idiom you must issue a list containing a default value.
dtbox = d.get('dt', [''])[0]
tmbox = d.get('tm', [''])[0]
我期待变量dtbox
并tmbox
包含两个表单框 dt 和 tm 的内容,但实际上它们设置为None
如果我在 JavaScript 中添加一行:Type: "POST"
Python 脚本炸弹并返回错误 - “501(方法未实现)”
我知道如果返回这些变量,脚本将起作用,就好像我在两个 select 语句上交换注释标记一样,它像梦一样工作。
请有人告诉我哪里出错了。