zoukankan      html  css  js  c++  java
  • jq拷贝表单$("#searchForm").clone(true),无法将select2数据value拷贝的问题

    实现导出功能时,需要整合查询条件,需要将查询的列表复制一份,生成一个新的表单,默认action提交信息,代码如下:

    function exportData() {
            try {
                var exportForm = $("#searchForm").clone(true).attr("id", "exportData");
                var select = $("#searchForm").find('select');
                var selectRes = $(exportForm).find('select');
                for (var i = 0; i <select.length ; i++) {
                    $(selectRes[i]).val($(select[i]).val());
                }
                // var exportForm = $("#searchForm").clone(true).attr("id", "exportData");
                exportForm.attr("action", "${ctx}/cop/coe/exportData");
                exportForm.unbind();
                $(document.body).append(exportForm);
                exportForm.submit();
            } catch (e) {
                console.log(e);
            } finally {
                exportForm.remove();
            }
        }

    在改造的过程中,发现

    $("#searchForm").clone(true)无法select的value拷贝到新的表单对象中,但是属性已经拷贝进来了。通过打印数据找到了解决方法
    遍历原始表单组件,找到所有的select组件,获取到value之后再将数据赋值到新的拷贝对象中,这样就解决了
    $("#searchForm").clone(true)带来的弊端。
    var select = $("#searchForm").find('select');
                var selectRes = $(exportForm).find('select');
                for (var i = 0; i <select.length ; i++) {
                    $(selectRes[i]).val($(select[i]).val());
                }
  • 相关阅读:
    <JZOJ5912>VanUSee
    <JZOJ5910>duliu
    <JZOJ5913>林下风气
    pytest学习笔记(二)
    试用saucelabs进行浏览器兼容性测试
    pytest学习笔记(一)
    SSM框架搭建,以及mybatis学习
    游戏2048的python实现
    使用svn在github上下载文件夹
    jenkins集成python的单元测试
  • 原文地址:https://www.cnblogs.com/lidedong/p/14607314.html
Copyright © 2011-2022 走看看