将jQuery中的参数传递给控制器​​中的方法

时间:2015-09-06 15:52:58

标签: c# jquery asp.net asp.net-mvc post

在ASP.NET MVC中,我使用此脚本调用控制器中的方法:

<script>
$.ajax({
    url: '@Url.Action("getBookedByUser", "Home")',
    data: "2",
    dataType: "html",
    success: function (data) {
        $('#someElement').html(data); // add the returned html to the DOM

        console.log(data);
    },
});
</script>

这就是我打电话的方法:

public async Task getBookedByUser(string id)
{
     BenchesService benchService = new BenchesService();
     List<Bench> obj = await benchService.getLastBenchByUser(id);

     userBench = obj.ElementAt(0);
}

我的问题是我的控制器方法中的idnull。它没有像我想的那样假设值“2”。

知道为什么吗?

1 个答案:

答案 0 :(得分:2)

你几乎就在那里。您需要设置JSON以包含id属性:

$.ajax({
    url: '@Url.Action("getBookedByUser", "Home")',
    data: { id: '2' },
    dataType: "html",
    success: function (data) {
        $('#someElement').html(data); // add the returned html to the DOM

        console.log(data);
    },
 });