【问题标题】:Checkbox onchange submit form GET复选框 onchange 提交表单 GET
【发布时间】:2017-12-19 14:00:00
【问题描述】:

我在页面上有一个复选框。我希望该复选框以其值提交给服务器,例如:/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>

【问题讨论】:

    标签: jquery get forms


    【解决方案1】:

    简短的回答是:

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

    应包含“名称”属性。

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

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

    【讨论】:

    • 失败了,不知道我是怎么错过的。谢谢!
    【解决方案2】:

    您缺少名称属性

    您也可以使用 onchange

    <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>

    快乐编码:)

    【讨论】:

      【解决方案3】:

      像这样尝试,我搜索了每一个我能找到的任何靠近你的查询的东西,所以我尝试了一种不同的方式,比如在提交表单时更改操作。

      <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>

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-05-20
        • 1970-01-01
        • 2013-01-21
        相关资源
        最近更新 更多