Checkbox onchange提交表格GET

时间:2017-12-19 14:00:00

标签: jquery get html-form

我在页面上有一个复选框。我希望该复选框能够使用它的值提交给服务器,例如:/PageName?cb=true/PageName?cb=1,但由于某种原因,它只会转到/PageName?。我在这里做错了什么?

形式:

<form action="/PageName" id="cbForm" method="get">
    <input type="checkbox" id="cb">
</form>

JS:

<script>
    $(function () {
        $("#cb").change(
            function () {
                $("#cbForm").submit();
            }
        )
    });
</script>

3 个答案:

答案 0 :(得分:1)

简短的回答是:

<input type="checkbox" id="cb">

应包含“name”属性。

<input type="checkbox" id="cb" name="cb">

name属性用于表示要发送的请求参数。你仍然需要id在jQuery中使用输入。

答案 1 :(得分:1)

您缺少名称属性

  

您也可以使用 onchange

&#13;
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<form action="/PageName" id="cbForm" method="get">
    <input type="checkbox" id="cb" name="cb" onchange='$("#cbForm").submit();'>
</form>
&#13;
&#13;
&#13;

快乐编码:)

答案 2 :(得分:0)

尝试这样,我搜索每一个我可以找到你的查询附近的任何东西,所以我尝试了这样的不同方式。在表格提交时改变行动。

&#13;
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script>
    $(function () {
        $("#cb").change(
            function () {
                 var n=$("#cbForm").attr('action');
                 var cb=$("#cb").val();
                 $("#cbForm").attr('action',n+'?cb='+cb)
                $("#cbForm").submit();
                alert($("#cbForm").attr('action'));
            }
        )
    });
</script>

<form action="/PageName" id="cbForm" method="get">
    <input type="checkbox" id="cb" name=cb value=1>
</form>
&#13;
&#13;
&#13;