【问题标题】:Send js variables to mvc controller将js变量发送到mvc控制器
【发布时间】:2019-05-31 03:20:09
【问题描述】:

How to send js variables to mvc controller

我正在尝试解决由 - ramiramilu 提供的代码作为上述问题的答案。

但是,我的控制器中的输出似乎仍然为 0。

模型和视图看起来与答案建议的相同。 但是,由于我在 MVC 中使用 dot net core,我在控制器端的代码看起来像 -

控制器代码 -

[Route("api/[controller]")]
[ApiController]
public class PieController : Controller
{
    [HttpGet]
    public IActionResult Index()
    {
        return View();
    }

    public ViewResult GetChartDetails(PieConcs piecord)
    {
        return null;
    }
}

Javascript 代码 -

函数 sendJson(){

    var model = new Object();
    model.x1 = 120;
    model.y1 = 240;
    model.x2 = 360;
        model.y2 = 480;
        alert('here');


    jQuery.ajax({
        type: "POST",
        url: "@Url.Action("GetChartDetails")",
        dataType: "json",
        contentType: "application/json; charset=utf-8",
        data: JSON.stringify({ piecord: model }),
        success: function (data) {
            alert(data);
        },
        failure: function (errMsg) {
            alert(errMsg);
        }
    });
}

模型类 -

public class PieConcs
{
    public int x1 { get; set; }
    public int x2 { get; set; }
    public int y1 { get; set; }
    public int y2 { get; set; }
}

视图的代码写在 Index.cshtml 文件中。 我是 MVC 新手,所以如果需要更详细的信息来改进问题,请告诉我。

【问题讨论】:

  • 到底是什么问题?不清楚你在问什么。你在哪里“得到 0 作为输出”?
  • 你能分享你的JS吗?
  • 就目前而言,您没有从控制器输出任何数字。您正在输出一个视图和一个空值。
  • @David - 我正在获取控制器中的值 - 与答案相同(对于我正在关注的问题)
  • @AbhishekD:什么“价值观”?您是否在问为什么您的 GetChartDetails 方法没有返回值?它正在返回null。你期望这段代码做什么,为什么?请澄清有关您面临的问题的详细信息。 Stack Overflow 不是寻宝游戏,虽然您的问题当然可以参考其他问题,但为了清晰和内容,它不应依赖于其他问题。

标签: javascript model-view-controller


【解决方案1】:

在您的 javascript 中执行以下操作:

let dataToSend = {
        objectProp1: ...,
        objectProp2: ...,
        ...
    }

    fetch('Pie/GetCharDetails', {
        method: 'POST',
        headers: {
            "Content-Type": "application/json"
        },
        body: JSON.stringify(dataToSend)
    }).then(response => response.json());

请记住,对象道具必须与您的 PieConcs 道具具有完全相同的名称。

【讨论】:

    猜你喜欢
    • 2014-03-17
    • 1970-01-01
    • 1970-01-01
    • 2019-08-05
    • 1970-01-01
    • 1970-01-01
    • 2019-06-20
    • 1970-01-01
    相关资源
    最近更新 更多