0

我正在尝试在上传文件时使用 .net 和 c# 将参数从我的 .aspx 页面发送到我的 handler.ashx 中。参数取自具有值的文本框。代码是:

 <script type = "text/javascript">
     $(document).ready(function() {
         $("#<%=FileUpload1.ClientID %>").uploadify({
             'swf': 'Scripts/uploadify.swf',
             'uploader': 'Handler.ashx',
             'auto': true,
             'multi': true,
             'buttonText': 'Select File(s)',
             'removeCompleted' : false,
             'fileTypeDesc' : 'PDF Files',
    'fileTypeExts' : '*.pdf',
    'formData' : { "id": "<%=TBcustnom.Text %>", "pwd": "<%=Pwd.Text %>" }


         });
     });

handler.ashx 仅接收第一个值(id),但不接收 pwd 部分中的内容。

string id = context.Request["id"]; 
string pwd = context.Request["pwd"];

如何配置 javascript 以发送两个参数?或者我如何配置 handler.ashx 来接收密码?

此致

4

2 回答 2

1

我唯一需要做的就是看正确的地方。

string id = context.Request["id"]; 
string pwd = context.Request["pwd"];

这应该是

string id = context.Request.Form[1]; 
string pwd = context.Request.Form[2];

小心!

于 2013-06-11T13:01:35.610 回答
1
var data = {};
data.id = <%TBcustnom.Text %>;
data.pwd = <%Pwd.Text %>;

$(document).ready(function () {
    $("#<%=FileUpload1.ClientID %>").uploadify({
        'swf': 'Scripts/uploadify.swf',
        'uploader': 'Handler.ashx',
        'auto': true,
        'multi': true,
        'buttonText': 'Select File(s)',
        'removeCompleted': false,
        'fileTypeDesc': 'PDF Files',
        'fileTypeExts': '*.pdf',
        'formData': obj: JSON.stringify(data)
    });
});

在服务器端,

var jsonString = context.Request["obj"];
var serializer = new JavaScriptSerializer();
var jsonObjects = serializer.Deserialize<Dictionary<string, string>>(jsonString);
于 2013-06-11T12:27:21.963 回答