我有一个基本的html表单,我想用两个提交按钮。 CGI脚本获取表单值并对其进行处理(无论使用哪个提交按钮),但我希望每个按钮在脚本后面与不同的操作相关联,即打印不同的输出:
## Get the form value in the usual way.
form = cgi.FieldStorage()
RawSearchTerm = form.getvalue("QUERY")
## Process the form info etc.
if (button1 was pressed):
print this
elif (button2 was pressed):
print this other thing
任何想法都表示赞赏,谢谢。
答案 0 :(得分:5)
<input type="submit" value="Submit" name="Submit1" />
<input type="submit" value="Submit" name="Submit2" />
根据按下的提交按钮,这将在表单数据中为您提供不同的名称。
你可以做到
form = cgi.FieldStorage()
if "Submit1" in form:
button = 1
elif "Submit2" in form:
button = 2
else:
print "Couldn't determine which button was pressed."
因为表单的行为类似于Python dict
,您可以检查其中是否包含给定名称。它应该包含所有发送的表单实体的名称,因此,如果有一个字段和两个提交按钮,它应该包含表单字段的名称和按下提交按钮的名称。