我正在使用带有jade模板引擎的node.js。我在玉器中有一个表格如下:
form.form-signin(style="padding-left:10px", action='/update', method='post')
table.table.table-hover(style="background-color:#fff;align:center;border:1px solid #ddd;padding-left:10px")#myTable.tablesorter
tbody
- if (evententries.length > 0) {
each entry, i in evententries
tr(style="height:5;font-size:12px;")
td(style="background-color:#5c78b2;")
p(style="color: #fff;text-align:center;") Team Name
td(style="background-color:#5c78b2")
p(style="color: #fff;text-align:center") Presenter(s)
td(style="background-color:#5c78b2")
p(style="color: #fff;text-align:center") Master
td(style="background-color:#5c78b2")
p(style="color: #fff;text-align:center") Manager
tr(style="height:30px;background-color:#E5EDFC;color: #000;font-size:14px;align:center")
td
input(type='textbox', name='teamname', value='#{entry.teamname}', style='width:120px;', readonly='readonly')
td
input(type='textbox', name='presenters', value='#{entry.presenters}', style='width:120px;', readonly='readonly')
td
input(type='textbox', name='scrummaster', value='#{entry.master}', style='width:120px;', readonly='readonly')
td
input(type='textbox', name='manager', value='#{entry.manager}', style='width:120px;', readonly='readonly')
tr
td(style="background-color:#fff; vertical-align:middle")
p(style="white-space:pre;word-wrap: break-word;text-align:center") Write-up
td(style="background-color:#fff", colspan="2")
input(type='textbox', name='writeup', value='#{entry.writeup}', style='width:120px;', readonly='readonly')
td(style="background-color:#fff; vertical-align:middle")
button#edit(type='submit') Edit
我希望知道这种类型的表单会提交什么,因为它里面有一个表,只有一些readonly输入字段。我希望在提交表单时只传递输入readonly字段。
答案 0 :(得分:0)
提交表单时,发送的数据包含与“成功控件”对应的名称=值对,如HTML规范中所定义;见例如controls和form data set construction上的HTML 4.01部分。只有名称和值的控件(表单字段)才能成为“成功控件”。在这种情况下,input
元素是成功的控件,但input type="submit"
元素除外,它不成功,因为它缺少name
属性。因此,从这种形式,只提交只读字段。
最好通过构建一个简单的服务器端脚本来检查真正提交的内容,这个脚本只回显它的内容,并且对于测试,将表单的action
属性替换为一个那个剧本。