我想知道是否有人可以帮助我。我正在尝试执行以下操作,以从HTML文本框中获取输入事件并将其发送到python函数。
textarea = cgi.FieldStorage()
chars = textarea.getvalue('1')
def MyPythonFunction():
'Do something with chars'
print(<textarea oninput=MyPythonFunction() </textarea>)
我尝试过各种方法,但无法正常工作。
预先感谢
答案 0 :(得分:1)
首先, textarea HTML标记的 oninput 关键字需要JavaScript代码,并将 mypythonfunction 解释为JavaScript函数。您需要输出一个包含 SUBMIT 标签的HTML 表单,以便在提交表单时它会调用您的服务器端脚本:该表单可能如下所示:
<form name="f" action="my_script.py" method="post">
<textarea name="chars"></textarea>
<br>
<input type="submit" name="submit" value="Submit">
</form>
您必须执行的服务器端脚本 my_script.py 可能类似于:
#!/usr/bin/env python
import cgi
import cgitb
cgitb.enable()
form = cgi.FieldStorage()
chars = form.getvalue('chars')
如果您真的想一次处理输入字符,则可以删除 SUBMIT HTML标签,放回 oninput 关键字。但是随后您必须指定一个JavaScript函数,只要textarea的内容发生更改,该函数便会被调用。此函数必须使用一种称为AJAX的技术来调用服务器端Python脚本,并将 TEXTAREA 的内容作为参数传递。这是一个相当高级的主题,但是您可以对此进行调查。