如何通过Python在HTML中检索复选框的值



我对HTML没有真正的了解,但我必须使用它来为一些数据创建Web视图。我想要一个按钮,链接到另一个python脚本来比较数据集。您可以通过选中复选框来选择要比较的数据集。然后,该按钮应该会将您带到正确的脚本。compare函数、数据集列表等都有效,但我似乎无法获得复选框的值。这会生成复选框列表

query_3 = App.QueryFactory.new("XMLQuery", xml_2 %(p1, p2, p3))
for smlz in query_3.getAll():
resultz += '''
<input type="checkbox" name="sml_id" value="%s"> 
<a href="http://xxx:xxx/xxxxx?sml_1=%s&gewinde=&kopf=&antrieb=&singlesearch=Suche">
%s | ID: %s |</a><br><br>''' % ( smlz.id, smlz.id, smlz.status, smlz.id)
return resultz

这是按钮的代码:

comparebutton = """<td><input type="button" onclick="window.location.href = 'http://xxxx:xxxx/xxxx?sml_1=%s&gewinde=&kopf=&antrieb=&singlesearch=Suche';" value="Vergleichen"></td>n""" % cb_id
keyw_c = str(kwds.get("sml_id"))   
keyw_c_l =  keyw_c.split() 
key_c_len = len(keyw_c_l)
cb_id = ''
p = 0
while p < key_c_len:
temp_1 = str(keyw_c_l[p])
temp_2 = temp_1.strip(",[]'")
p += 1
cb_id += "%s_" % temp_2

(注意:需要_,因为我要链接到的脚本能够在用下划线划分数据ID时显示多个数据集,从而"比较"数据集)

我尝试过get、getAll等来获取我选中的复选框的值,但我总是得到"无"我做错了什么吗?或者有没有可能通过制作一个按钮来执行我的python代码的某个功能来让这件事变得更容易,因为我有"比较"脚本的代码,我只是缺乏做类似事情的HTML知识。

kwds的输出(我有4个字段用于输入,singlesearch是搜索按钮的名称)

{'sml_1': ['test'], 'antrieb': ['test'], 'singlesearch': ['Suche'], 'kopf': ['test'], 'gewinde': ['test ']}

要制作一个html web浏览器界面,您需要一个用于web浏览器与应用程序通信的传输。最常用的传输是http。要运行一个可以运行python代码的http,有很多选项。如果非要我推荐一些东西,那一定是金字塔。

然后你的网络服务器应该处理不同的请求:

  1. 返回初始html表单的url。该表单可以包含您需要的复选框。此表单的操作应该是请求num 2的url。表单的方法可以是POST或GET。使用GET,表单数据对用户可见。对于POST,它是隐藏的。对于您的用例,GET可能更好。

  2. 一个处理从表单获取的url。它将能够通过查看请求来查看表单上输入的值(例如复选框)。此时,您可以调用vpython模块来生成所需的内容,并在http响应中将其传递给浏览器。

最新更新