Vue安夏 2021-07-05 18:32 采纳率: 100%
浏览 21
已结题

jq表单序列化的小问题,蜗牛求老虎

1.jq同name只取一个value值,后面的覆盖前面的怎么写?
2.怎样把空值的value不要传出值

  • 写回答

1条回答 默认 最新

  • 关注

    这个只能用js处理了,给你写个例子
    代码如下:(如有帮助,望采纳!谢谢! 点击我这个回答右上方的【采纳】按钮)

    <script type="text/javascript" src="http://libs.baidu.com/jquery/1.11.1/jquery.min.js"></script>
    <form method="post" action="testing.php" id="form" >
        <input type="checkbox" name="n1" value="AAA" checked="checked" />
        <input type="checkbox" name="n1" value="BBB" checked="checked" />
        <input type="checkbox" name="n1" value="CCC" checked="checked" />
        <input type="text" name="t1" value="334" />
        <input type="text" name="t2" value="" />
    </form>
    
    
    <script type="text/javascript">
    var arr = $("#form").serializeArray();
    var obj = {};
    arr.forEach(function(v, i){
        if (v.value!="") {
            obj[v.name]=v.value;
        }
    });
    console.log(obj);
    var arr2 = [];
    for (var n in obj) {
        arr2.push(encodeURIComponent(n)+"="+encodeURIComponent(obj[n]));
    }
    var data = arr2.join("&")
    console.log(data);
    </script>
    
    

    img

    这样之后用 $.ajax(); 提交 obj或data的值都可以。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 8月11日
  • 已采纳回答 8月3日