使用HTML获取提交表单之外的已检查元素

时间:2015-01-28 23:46:47

标签: javascript html forms

我有一个网页,顶部是一组单选按钮和一个提交按钮。这是代码:

<form action="/batch" method="POST">
    With checked selection you may: 
    <input type="radio" name="bulk" value="broadcast">Broadcast</input>
    <input type="radio" name="bulk" value="unbroadcast">Unbroadcast</input>
    <input type="radio" name="bulk" value="delete">Delete</input>
    <input type="submit" value="Run batch on checked items" />
</form>

下面我有一个表格,其中包含一堆行,复选框位于开头。代码是:

<td><input type="checkbox" name="{{ md5_name }}" class="box"/></td>

有没有办法让表单提交复选框的列表以及是否重新检查它们,而不管复选框是否在表单内?也许将它命名为相同或共享类?

在发布之前搜索我发现this page中的以下片段看起来很有前途,但我不知道如何将它与我的POST方法一起运行,或者我如何将结果包含在我的POST方法。

function getRadioValue (theRadioGroup)
    {
        for (var i = 0; i < document.getElementsByName(theRadioGroup).length; i++)
    {
        if (document.getElementsByName(theRadioGroup)[i].checked)
        {
            return document.getElementsByName(theRadioGroup)[i].value;
        }
    }
}

2 个答案:

答案 0 :(得分:2)

您可以在HTML 5 doctype中使用form属性将这些表单元素与特定表单相关联:

<td><input form="formElementID" type="checkbox" name="{{ md5_name }}" class="box"/></td>

此属性:

  

表示作为元素 1

的所有者的表单

参考文献:

  1. MDN:HTML Attribute reference
  2. 参考书目:

答案 1 :(得分:0)

您可以将函数绑定到表单的submit方法以检索复选框的值,并将它们添加到表单中的隐藏字段中。

或者将复选框的默认值添加到隐藏字段,并将更改方法绑定到复选框以更新隐藏字段。