我有一个表格中的html表格,其中使用handebars填充表格的行。我想使用复选框选择表格的某些行。表单发布帖子请求。我正在使用express.js框架。要求是,在提交表单时,json应该有一个名为“checked”的字段,其值应为true,如果选择了该行,则为1。请帮我解决这个问题。
以下是html的片段
<form id='form1'>
<table border="1">
{{#each ElectrnicsResults}}
<tr>
<td>{{Product}}</td>
<td>{{Description}}</td>
<td>{{price}}</td>
<td>{{quantity}}</td>
<td>
<input type='checkbox' id="check">
</td>
<td style="display:none">
<input type="hidden" name="electronicsId" value="{{electronicsId}}" />
<input type="hidden" name="Product" value="{{Product}}" />
<input type="hidden" name="Description" value="{{Description}}" />
<input type="hidden" name="price" value="{{price}}" />
<input type="hidden" name="quantity" value="{{quantity}}" />
</td>
</tr>
{{/each}}
</table>
<input type="submit" value="submit" >
</form>
以下是使用JQuery的javascript代码
$(document).ready(function () {
$('#form1').submit(function() {
$.ajax({
url: '/submitValues',
type: 'post',
dataType: 'json',
data: $('#form1').serialize(),
success: function() {
alert("Submitted!"); // for testing
}
});
return false;
});
});
答案 0 :(得分:0)
由于表单是动态创建的,因此您还必须动态解析结果。
首先,您需要将name
字段附加到每个input type=checkbox
元素。此名称必须对每个ElectrnicsResults
都是唯一的(可能类似于ID
字段)。
然后,在解析表单详细信息时,在后端代码中,您可以再次遍历每个相关的ElectrnicsResults
并检查每个复选框的req.body.{UNIQUE_NAME_FIELD_VALUE}
,并采取相应的行动。