//文件下载(post无刷新) downLoadFile: function (option) { var method = option.method ? option.method : "post"; var $iframe = $('<iframe id="downFileFrame" name="" style="display:none;" scrolling="yes" noresize ></frame>'); var $form = $('<form method="' + method + '" action="' + option.url + '"></form>'); if (option.data) { for (var key in option.data) { $form.append('<input type="hidden" name="' + option.data[key].name + '" value="' + option.data[key].value + '"/>'); } } $iframe.append($form); $(document.body).append($iframe); $form[0].submit(); $iframe.remove(); }
这里面使用了前一篇的封装common组件
common.downLoadFile({ url: "../api/DeliveryCost/ExportMultiECRlist", data: $("#multiForm").serializeArray() });
这里主要动态的将当前页面的form元素重新组装在一个隐藏的iframe中的form然后提交,这样只会刷新隐藏的iframe,而不会刷新当前页面。