C# - 获取 Ajax 数据

本文关键字:数据 Ajax 获取 | 更新日期: 2023-09-27 18:35:30

我想通过 Ajax 将数据发送到 C# 文件,但是当我检查接收到的数据时,它给了我 null。我的代码有问题吗?

Javascript 文件

 $(".save").click(function () {
    var ss = "Helloo!";
    $.ajax({
        type: "POST",
        url: "/Notes/save.cshtml",
        global: true,
        data: {fofo: ss},
        processData: false,
        contentType: false,
        cache: false,
        success: function(data){
  console.log(data);
 },
        error: function (req, status, error) {
            alert("There was a problem with the server. Try refreshing the page.");
            return false;
        }
    });
});

接收数据的 C# 文件 (save.cshtml)

@{
  var s = Request.Form["fofo"];
 var result = "";
    var userData = s;
    var dataFile = Server.MapPath("~/Notes/lolo.txt");
    File.WriteAllText(@dataFile, s);
    result = "Information saved.";
}
 @if(result != ""){
    <p>Result: @result, @s</p>
}

C# - 获取 Ajax 数据

您不会将response发送回AJAX函数。 不仅如此,您正在做的事情不是标准的MVC。 您应该点击一个Controller,该将数据保存在服务器端的文件中,然后使用JsonResult将结果发回。

例如:

public JsonResult SaveNotes()
{
    // Code to save file here
    // Return the response 
    return Json({NotesSaved = true});
}

然后在JavaScript AJAX成功对象中,您将NotesSaved对象设置为 true。

注意:您还应该将 AJAX 命令中的 URL 参数更改为如下所示的内容:

 url: '@Url.Action("SaveNotes")'