将表单文本框值传递给Controller

时间:2018-10-23 16:53:37

标签: javascript c# ajax razor core

我有以下内容:

家庭控制器:

public IActionResult Index()
{
    return View();
}

public ActionResult Transfer()
{
    string path = @Url.Content(webRootPath + "\\SampleData\\TruckDtrSource.json");
    if (System.IO.File.Exists(path))
    {
        System.IO.File.Delete(path);
    }
    return View();
}

public ActionResult FindTruck()
{
    return View("Transfer");
}

Transfer.cshtml:

<button id="btnTransfer" name="btnTransfer" class="btn btn-success center-block" onclick="FindTruck();">Search</button>

<script>
    function FindTruck() {
        $.ajax({
            type: "GET",
            url: "/Home/FindTruck",
            async: true,
            success: function (msg) {
                ServiceSucceeded(msg);
            },
            error: function () {
                return "error";
            }
        });
    }
</script>

当用户单击“ btnTransfer”时,我需要将值从文本框传递到我的控制器。

你能帮我吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

您应该像以下示例一样发布表单:

    function FindTruck(){

  $.ajax({
            url: "/Home/FindTruck",
            type: 'POST',
            data: {
                Email: $("#Email").val(),
            },
            cache: false,
            async: false,
            success: function (data) {

            },
            error: function (xhr, ajaxOptions, thrownError, data) {

            }
        });

}

并在您的控制器中:

[HttpPost]
    public JsonResult FindTruck(string Email)
    {
       --------your code----------------
    }