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

Javascript MVC如何使用Ajax将数据从视图传递到模型,javascript,jquery,ajax,json,asp.net-mvc-4,Javascript,Jquery,Ajax,Json,Asp.net Mvc 4,您好,我收到一个问题,询问如何使用从视图向模型发送信息。我意识到信息需要发送到控制器,然后再发送到我的模型。我得到了一些代码,可以将视图中的信息发送到控制器: [HttpPost] public ActionResult processCommand(string cmd) { return Json(cmd); } 以下是Ajax: $(document).ready(function () { $("#cmdSend").click(func

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

[HttpPost]
    public ActionResult processCommand(string cmd)
    {
        return Json(cmd);
    }
以下是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发送了我的输入。然而,我的问题是,我不知道如何从中取出字符串并将其发送到我的模型。如有任何帮助,我们将不胜感激。

如您的问题评论中所述,您使用的术语有点混乱,但如果正确理解您的问题,您希望服务器上的控制器上的操作接受“命令”并使用它

为了让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);
       }
}

希望这有帮助

“我希望能够使用Ajax/JQuery/Json发送命令”——这听起来像是我选择的解决方案。你被困在哪里了?对术语有点挑剔。。。您不会将数据“从视图传递到模型”。您可以通过调用控制器操作并将数据发送到这些操作(通常以模型的形式,但任何参数类型都可以)来将数据从客户端传递到服务器。AJAX只是通过JavaScript调用这些操作,而不是页面加载(这是您想要的)。然后控制器相应地处理操作,可能以某种方式与模型服务器端交互。我不知道直接从视图向模型传输数据的特定代码,我搜索了一种“键入并输入”与终端类似,我发现Ajax/JQuery/Json是实现这一点的方法,但我不知道如何在特定场景中使用它们。我建议从开始,甚至可以跳到Ajax部分。如前所述,我认为你的问题过于宽泛,不可能如此。