将文本上载到javascript中的asp.net通用处理程序

将文本上载到javascript中的asp.net通用处理程序,javascript,asp.net,web-services,webrequest,Javascript,Asp.net,Web Services,Webrequest,如何将用户编写的文本上载到asp.net通用处理程序?文本相当长。从您的注释中查看代码(感谢分享),似乎包含文本的参数在JavaScript中被称为数据,您正在处理程序中查找文件 在处理程序中尝试:context.Request.Form[“data”]。尝试以下jQuery代码: jQuery(文档).ready(函数($){ $(“#向处理程序提交信息的按钮id”)。在('click',函数(ev)上{ ev.preventDefault(); //用某种方式包装你的味精 //以防你想结束

如何将用户编写的文本上载到asp.net通用处理程序?文本相当长。

从您的注释中查看代码(感谢分享),似乎包含文本的参数在JavaScript中被称为
数据
,您正在处理程序中查找
文件


在处理程序中尝试:
context.Request.Form[“data”]

尝试以下jQuery代码:

jQuery(文档).ready(函数($){
$(“#向处理程序提交信息的按钮id”)。在('click',函数(ev)上{
ev.preventDefault();
//用某种方式包装你的味精
//以防你想结束其他事情
//给你未来的处理者
变量$xml=$(“”)
.append($('',{
text:escape($('#包含文本的textarea的id').val()
}
));
$.ajax({
类型:'POST',
url:“/path/到您的/handler.ashx”,
数据:$('').append($xml.html(),
成功:功能(数据){
$('body').prepend($('',{text:$(data.find('responsetext').text()}));
}
});
});
});
在你的处理器中:

公共类YourHandler:IHttpHandler
{
公共无效处理请求(HttpContext ctx)
{
//用XML响应
//构建响应模板
ctx.Response.ContentType=“text/xml”;
字符串rspBody=@”
{0}
";
//获取通过jquery创建的xml文档
//并将其加载到XmlDocument中
XmlDocument xDoc=新的XmlDocument();
使用(System.IO.StreamReader sr=新StreamReader(ctx.Request.InputStream))
{
字符串xml=sr.ReadToEnd();
LoadXml(xml);
}
//找到节点并解码文本
XmlNode msg=xDoc.DocumentElement.SelectSingleNode(“/msg”);
字符串msgText=HttpUtility.UrlDecode(msg.InnerXml);
如果(!String.IsNullOrEmpty(msgText))
{
//成功!!
//你打算怎么做就怎么做
//并发送成功响应
ctx.Response.Write(String.Format(rspBody,“SUCCESS”);
}
其他的
{
ctx.Response.Write(String.Format(rspBody,“FAIL:msgText为空!”);
}
} 
}

相当长?那是什么意思?对不起,英语不是我的第一语言。这个文件太大了,我不能仅仅作为一个查询字符串传递。我尝试了但没有成功,这就是为什么我问这个问题,我认为我使用了错误的方法。我在处理程序中发送或接收日期时遇到问题。“文件太大”这意味着什么?正如上面所述,您可以使用POST。你能告诉我们什么部分有效,什么部分无效吗?有错误代码或错误信息吗?甚至可以向我们展示(部分)你的JavaScript和/或处理程序……我在评论中犯了一个错误,无论如何,谢谢。cmd.prompt给出了答案。
jQuery(document).ready(function($){
    $('#button-id-to-submit-info-to-the-handler').on('click', function(ev) {
        ev.preventDefault();

        //Wrap your msg in some fashion
        //in case you want to end other things
        //to your handler in the future
        var $xml = $('<root />')
            .append($('<msg />', { 
                text: escape($('#id-of-your-textarea-that-has-the-text').val()) 
            }
        ));

        $.ajax({
            type:'POST',
            url:'/path/to-your/handler.ashx',
            data: $('<nothing />').append($xml).html(),
            success: function(data) {
                $('body').prepend($('<div />', { text: $(data).find('responsetext').text() }));
            }
        });
    });
});