JavaScript 确认何时在表单中选择动态 HTML 字段
JavaScript confirm when a dynamic HTML field is selected within a form
我的 PHP 文件以表格形式回显数据查询的结果 -table 以便用户可以编辑记录。 table 最多包含 30 条记录。提交表单时,如果选中了 VoidTag 复选框,我需要用户确认此操作,否则表单可以在没有确认框的情况下提交。我 JavaScript 经验很少,不知道该怎么做。
<tr>
<td class="count gridtable">
<input type="text" class="tableTxt" name="inv[1091][Count]"/>
</td>
<td class="count gridtable">
<input type="text" class="count" name="inv[1091][Notes]" value=""/>
</td>
<td class="count gridtable">
<input type="text" class="tableTxt" name="inv[1091][CountedBy]" value=""/>
</td>
<td class="count gridtable">
<input type="checkbox" class="center" name="inv[1091][VoidTag]"/>
<input type="hidden" class="center" name="inv[1091][TagNum]"/>
</td>
</tr>
另一个问题线程略有不同,但在使用确认对话框方面为您指明了正确的方向:
首先,我假设您在 table 行中有一个围绕所有这些表单元素的表单。 . .您将必须向该表单提供 onsubmit
操作以 return 确认功能的结果:
<form onSubmit="return confirmSubmit(this);">
然后,根据是否存在任何选中的复选框,使用以下函数确认提交:
function confirmSubmit(theForm) {
if (theForm.querySelectorAll('input:checked').length > 0) {
return confirm('Do you really want to **insert question criteria here**?')
}
else {
return true;
}
}
当用户提交表单时,代码将检查表单中是否有任何 "checked" 复选框(我还假设表单中没有其他复选框或单选按钮,在你想在每一行中检查的那些之外)。如果它找到至少一个选中的复选框,它会要求用户确认他们要提交。如果他们选择 "Cancel",它将 return false
,停止表单提交。 . .在所有其他情况下,它将 return true
,允许继续提交。
如果表单中有 ARE 个其他复选框或单选按钮,则需要更改 .querySelectorAll()
参数以适应这种情况,包括(可能)分配一个需要包含在验证逻辑中的所有复选框通用 class
。
我的 PHP 文件以表格形式回显数据查询的结果 -table 以便用户可以编辑记录。 table 最多包含 30 条记录。提交表单时,如果选中了 VoidTag 复选框,我需要用户确认此操作,否则表单可以在没有确认框的情况下提交。我 JavaScript 经验很少,不知道该怎么做。
<tr>
<td class="count gridtable">
<input type="text" class="tableTxt" name="inv[1091][Count]"/>
</td>
<td class="count gridtable">
<input type="text" class="count" name="inv[1091][Notes]" value=""/>
</td>
<td class="count gridtable">
<input type="text" class="tableTxt" name="inv[1091][CountedBy]" value=""/>
</td>
<td class="count gridtable">
<input type="checkbox" class="center" name="inv[1091][VoidTag]"/>
<input type="hidden" class="center" name="inv[1091][TagNum]"/>
</td>
</tr>
另一个问题线程略有不同,但在使用确认对话框方面为您指明了正确的方向:
首先,我假设您在 table 行中有一个围绕所有这些表单元素的表单。 . .您将必须向该表单提供 onsubmit
操作以 return 确认功能的结果:
<form onSubmit="return confirmSubmit(this);">
然后,根据是否存在任何选中的复选框,使用以下函数确认提交:
function confirmSubmit(theForm) {
if (theForm.querySelectorAll('input:checked').length > 0) {
return confirm('Do you really want to **insert question criteria here**?')
}
else {
return true;
}
}
当用户提交表单时,代码将检查表单中是否有任何 "checked" 复选框(我还假设表单中没有其他复选框或单选按钮,在你想在每一行中检查的那些之外)。如果它找到至少一个选中的复选框,它会要求用户确认他们要提交。如果他们选择 "Cancel",它将 return false
,停止表单提交。 . .在所有其他情况下,它将 return true
,允许继续提交。
如果表单中有 ARE 个其他复选框或单选按钮,则需要更改 .querySelectorAll()
参数以适应这种情况,包括(可能)分配一个需要包含在验证逻辑中的所有复选框通用 class
。