ASH_PRIEM 2019-07-26 10:49 采纳率: 75%
浏览 1244

Easyui 使用dialog窗口提交form表单 数据为空

我点击打开easyUI的dialog窗口时,后台接收的数据全部为null;但我直接使用jq的打开窗口并传输数据,后台都能获取到。我看网上有人说使用了dialog文档结构改变了,找不到对应的from?该怎么改啊

  • js部分

    <script type="text/javascript">
    /* 显示addDiv */
    function addDiv() {
        $("#addTab").dialog({
            title : '新增',
            width : 600,
            height : 400,
            modal : true
        })
    
        $("#addTab").dialog("open");
    }
    
    /* 提交新增 */
    function add() {
        var $dialog = $("#addDiv");
        var $form = $dialog.find("form[name=addForm]");
        var formData = new FormData($form[0]);
        console.log($form);
        console.log(formData);
        $.ajax({
            url : basePath + "/goodsAdd.json",
            type : "post",
            dataType : "json",
            data :formData,
            processData : false,
            cache : false,
            contentType : false,
            success : function(data) {
                if (data.num == 1) {
                    $.messager.alert('提示', "新增成功");
                    $("#datag").datagrid("reload");
                } else {
                    $.messager.alert('提示', "新增失败");
                }
            }
        });
    }
    </script>
    
  • HTML部分

<body>
    <div id="addDiv" >
        <form name="addForm" method="post" enctype="multipart/form-data">
            <table id="addTab">
                <tr>
                    <td>商品名称:<input id="goodsname1" class="easyui-textbox" name="goodsname" style="width: 150px"></td>
                    <td>商品价格:<input id="goodsprice1" class="easyui-numberbox" name="goodsprice" data-options="validType:'goodsprice',required:true" style="width: 150px"></td>
                </tr>
                <tr>
                    <td>保质&emsp;期:<input id="releasedate1" class="easyui-numberbox" name="releasedate" data-options="validType:'releasedate',required:true" style="width: 150px"></td>

                    <td>生产日期:<input id="creationdate1" class="easyui-datetimebox" name="creationdate" data-options="validType:'creationdate',required:true" style="width: 150px"></td>
                </tr>
                <tr>
                    <td>产&emsp;&emsp;地:<input id="producingarea1" class="easyui-textbox" name="producingarea" data-options="validType:'producingarea',required:true" style="width: 150px"></td>
                    <td>商品类型:<input id="goodstype1" class="easyui-textbox" name="goodstype" data-options="validType:'goodstype',required:true" style="width: 150px"></td>
                </tr>
                <tr>
                    <td>商品信息:<input id="goodsinfo1" class="easyui-textbox" name="goodsinfo" data-options="validType:'goodsinfo',required:true" style="width: 150px"></td>
                </tr>
                <tr>
                    <td colspan="2">
                        <div style="width: 100%; text-align: center;">
                            <img id="defaultImage" style="width: 250px; height: 150px; display: inline-block;" alt="默认商品" src="../../view/images/goods/wallhaven-2e3839.jpg">
                        </div>
                    </td>
                </tr>
                <tr>
                    <td colspan="2">
                        <div style="width: 100%; text-align: center;">
                            <input name="upImage" class="easyui-filebox" style="width: 300px" data-options="buttonText:'选择文件',onChange:showImage">
                        </div>
                    </td>
                    <td>
                    <input type="hidden" id="goodsimagename" name="goodsimagename" value="wallhaven-2e3839"> 
                    <input type="hidden" id="goodssuffix" name="goodssuffix" value="jpg">
                    <input type="hidden" id="goodsimagetype" name="goodsimagetype" value="image/jpg"> <input type="hidden" id="goodsimagesize" name="goodsimagesize" value="8888"></td>
                </tr>
                <tr>
                    <td colspan="2" style="text-align: center;"><a href="#" class="easyui-linkbutton" data-options="iconCls:'icon-add',onClick:add">提交</a></td>
                </tr>
            </table>
        </form>
    </div>
</body>
  • 写回答

2条回答 默认 最新

  • renkai721 2019-07-26 11:27
    关注

    参照下,下面是三种提交方式

    // 第一种form表单提交
        $("#uploadForm").attr("action",getContext() + "/add");
        $("#uploadForm").submit();
    
        // 第2种ajax做法
        var form = document.getElementById('uploadForm');
            var formData = new FormData(form);  //重点:要用这种方法接收表单的参数
            $.ajax({
                url : getContext() + "/add", 
                type : 'POST',
                data : formData,
                // 告诉jQuery不要去处理发送的数据
                processData : false,                 
                // 告诉jQuery不要去设置Content-Type请求头
                contentType : false,
                async : false,
                success : function(d) {
                    console.log(d);
                }
            });
        // 第3种ajax做法
        var formData = new FormData();
        var image = $('#ad_image')[0].files[0];
        var androidUrl = $('#androidUrl').val();
        var iosUrl = $('#iosUrl').val();
        formData.append("file",image);
        formData.append("androidUrl",$("#androidUrl").val());
        formData.append("iosUrl",$("#iosUrl").val());
    
        $.ajax({
            url : getContext() + "/compManage/advertisementRelease/add", 
            type:'POST',
            data:formData,
            processData : false,                 
            contentType : false,
            async : false,
            xhrFields: {
                // 跨域
                withCredentials: true
            },
            dataType : "json",
            success:function(data){
                if (data.errorCode == "success") {
    
                }
            }
        });
    
    }
    
    
    评论

报告相同问题?

悬赏问题

  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 spring后端vue前端
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题
  • ¥15 Visual Studio问题