将模型属性从 Jquery Ajax 调用传递到控制器方法

本文关键字:控制器 方法 调用 Ajax 模型 属性 Jquery | 更新日期: 2023-09-27 18:33:48

问题背景:

我只是尝试将视图(视图已将模型从其关联的控制器传递给它)中的许多属性传递给控制器上的另一个方法。

代码:

阿贾克斯调用:

$("#myLink").click(function (e) {
        $.ajax({
            url: '@Url.Action("AddToCart")',
            type: 'POST',
            data: {
                "qty": $('#productQty').val(),
                "name": $('#productName').text(),
                "price": $('#productPrice').text(),
                "brand": $('#productBrand').text(),
                //Image property is NOT being sent.
                "image" : $(@Model.Image).val()
            }
        });
    });

我需要将传递给视图的模型的属性设置为Ajax调用的"image"数据属性。

这是正在调用的控制器上的方法:

public void AddToCart(string qty, string name, string price, string brand, string image)
{
   //Logic.
}

问题:

目前我似乎找不到传递"图像"属性的方法。我尝试将其设置为"var",但它仍然作为空传递。

当此属性未设置为 HTML 元素时,如何从传递的模型发送此属性?

将模型属性从 Jquery Ajax 调用传递到控制器方法

你正在使用 @Model.Image 属性作为 jQuery 选择器。如果您真的没有与选择器匹配的表单元素,这实际上没有意义(如果 @Model.Image 的值为"#input1",则<input id="input1" ...>匹配)