jquery - 使用 blueimp fileupload 发送附加参数

标签 jquery asp.net jquery-file-upload httpcontext blueimp

我正在使用 blueimp file-upload 的功能将附加参数发送回在 add 中设置的服务器:

var simpleImport = false, replaceImport = false, mergeImport = false;   
$uploadButton.fileupload({
            url: myURL,
            formData: { simple : simpleImport, replace : replaceImport, merge : mergeImport }, 
            add: function (e, data) {
                var valid = true;
                // validation logic
                if (valid) {
                    if (condition №1) simpleImport = true;
                    else if (condition №2) replaceImport = true;
                    else if (condition №3) mergeImport = true;
                    data.submit();
                }
            },
            done: function (e, data) {
                if (data.result) {
                    oTable.ajax.reload();
                }
            },
            fail: function (e, data) {
                alert("shit happens");
            }
        });

在服务器上我以这样的方式读取它们:

var merge = Convert.ToBoolean(Context.HttpContext.Request.Form["merge"]);
var simple = Convert.ToBoolean(Context.HttpContext.Request.Form["simple"]);
var replace = Convert.ToBoolean(Context.HttpContext.Request.Form["replace"]);

但是,尽管在 add 中更改了它的值,我在处理程序中仍然将它们全部等于 false 。除了使用隐藏输入或者我做的事情完全错误之外,还有什么方法可以获取正确的值吗?

最佳答案

好的。我终于解决了这个问题:而不是在设置对象中添加额外的参数:

$uploadButton.fileupload({
      url: myUrl,    
      formData: { additional params },
      ....
});

应在 add 方法中提交数据之前直接指定它们:

add: function (e, data) {
    .....
    data.formData = { additional params };
    data.submit();
},

关于jquery - 使用 blueimp fileupload 发送附加参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26036773/

相关文章:

javascript - W3Schools AJAX 示例无法在本地计算机上运行

jquery - 使用 jquery 文件上传在上传之前压缩图像

javascript - 通过 iframe 在 IE 11 中拖放文件不起作用

javascript - 显示任何对象的完整 DOM 信息

javascript - 在本地服务器而非实时服务器上发送 AJAX/PHP 表单

c# - Entity Framework Core 和包括子集合

javascript - ReadDataURL - 图像未使用 jquery 在 Firefox 中加载

javascript - 如何让 jQuery 在上传之前选择文件时过滤文件类型?

jquery - 通过 JQuery 获取和使用从多个文本框获得的值

events - 使用 jquery animate 在加载时突出显示 div