使用jqueryajax向同一页面返回Python响应

2024-04-25 05:00:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我想使用jqueryajax和一个带有两个字段的简单web表单将值发送到python脚本。我希望结果显示在同一个调用页面上的div标记中(index.html.en). 在

我有一个网页叫index.html.en,我单击submit按钮,表单中的值将传递给python脚本(打印名.py),结果将返回并显示在一个div标记中,该标记位于index.html.en第页。过去两天我一直在寻找答案或例子,但我没有找到任何答案。我不确定我想做什么,以及我想做的方式是否可行。我正在使用MacOSLion,我的网络服务器已经启动并正常工作。目前我的代码验证字段不是空的,但它不返回任何内容。任何帮助都将不胜感激。我的代码和文件结构如下。在

文件结构:

Library
  WebServer
    CGI-Exectutables/printname.py
    Documents/projects/rambo/index.html.en

HTML文件:Index.html.en在

^{pr2}$

Python文件:打印名.py在

#!/usr/bin/python

import cgi, cgitb

form = cgi.FieldStorage()
fname = form.getvalue('first_name')
lname = form.getvalue('last_name')

print "Content-Type: text/html"
print

print (fname + ' ' + lname)

同样,我对python和ajax还比较陌生,所以我不确定我尝试的方法是否可以实现。在


Tags: 文件答案代码py标记divform脚本
1条回答
网友
1楼 · 发布于 2024-04-25 05:00:32

您需要开始使用浏览器的开发工具,以便调试javascript代码(逐行逐行检查,设置断点等)。在

在本例中,$.ajax(..)调用似乎不是$('#one').submit(...)处理程序的一部分,这意味着在提交表单时不会调用它。您可以通过在cgi脚本中的print("hello world")来验证这是否是问题所在(它应该在文档就绪时立即显示)。在

$.ajax(..)调用中的data:参数应该类似于$('form#one').serialize(),这样实际的参数(带值)将被发送到python。(我从这里的记忆开始,在jQuery文档中查找)。在

有许多框架可以处理处理处理请求/响应的所有细节,您可能还需要研究这些细节。cgi非常90年代;-)

相关问题 更多 >