以FormData类型发送到服务器的Ajax Post字符串

本文关键字:Ajax Post 字符串 服务器 FormData 类型 | 更新日期: 2023-09-27 18:10:04

我想发送FormData类型的任何字符串。但是我的代码中有一些错误。我找不到这是什么。

下面的代码是我的。aspx代码

<script type="text/javascript"> 
        function mscert() { 
            var certname = $("#txtname").val(); 
            var formData = new FormData(); 
            formData.append("Name", certname);                        
            var post= $.ajax(
        {
            type: "POST",
            url: "MyHandler.ashx",
            contentType: false,
            processData: false, 
            data: formData, 
            cache: false
        });
            pos.done(function (data, teStatus, jqXHR) {
                alert(data);
                alert("ok");
            });
            pos.fail(function () {
                alert("error");
            });
        }                 
</script>

以下代码为MyHandler.ashx

public class MyHandler: IHttpHandler
{
    public void ProcessRequest(HttpContext context)
    {
        context.Response.ContentType = "text/plain";
        HttpPostedFile ht2 = context.Request.Files["Name"];
.
.

我检查了断点,ht2总是null

有人能帮忙吗?

请注意,当我发送图像而不是字符串一切都是好的。此时我可以在服务器端获取图像

以FormData类型发送到服务器的Ajax Post字符串

必须以JSON格式传递数据,如

function CallHandler() {
$.ajax({
url: "Handler/MyHandler.ashx",
contentType: "application/json; charset=utf-8",
data: { 'Id': '10000', 'Type': 'Employee' },
success: OnComplete,
error: OnFail
});
return false;
}