MVC如何使用Ajax将数据从视图传递到模型

时间:2014-05-12 19:42:27

标签: javascript jquery ajax json asp.net-mvc-4

您好我发布了一个问题,询问使用什么来从视图向模型发送信息。我意识到信息需要发送到控制器然后发送到我的模型。我得到了一些代码,可以将信息从我的视图发送到我的控制器:

这是Ajax:

$(document).ready(function () {
    $("#cmdSend").click(function () {
        // Get he content fom the input box
        var mydata = document.getElementById("cmdInput").value;
        $.ajax({
            type: "POST",
            url: "/Terminal/processCommand",
            data: { cmd: mydata },  // pass the data to the method in the Terminal Contoller
            success: function (data) {
                alert(data);
            },
            error: function (e) { alert(e); }
        })
    });
});

这是我控制器中的代码:

[HttpPost]
    public ActionResult processCommand(string cmd)
    {
        return Json(cmd);
    }

我测试了它并在json中发送了我的输入。不过我的问题是,我不知道如何从中取出字符串并将其发送到我的模型。请任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

正如您对问题的评论中所述,您使用的术语有点令人困惑,但如果正确理解您的问题,您需要在服务器上的控制器上执行操作以接受“命令”并使用它。 / p>

可以发布以下帖子,以便ajax帖子成功点击操作:

$('#cmdSend').click(function () {
    var cmdInput = document.getElementById('cmdInput').value;
    $.ajax({
        url: 'terminal/sendInfo',
        type: 'POST',
        data: {cmd : cmdInput},
        dataType: 'json',
        success: function (data) {
            //What you want to do with the returned string with data.cmd
        }
    });
});

控制器操作如下:

public class TerminalController : Controller
{
   [HttpPost]
   public JsonResult sendInfo(string cmd)
       {
           //Do what you want to do with 'cmd' here.

           return Json(new { cmd = "Whatever you want to send" }, JsonRequestBehavior.AllowGet);
       }
}

希望这有帮助!