Asp.net Mvc:Jquery post array + anti伪造令牌

时间:2009-08-07 04:26:51

标签: jquery asp.net-mvc arrays

如何使用防伪标记将数组发布到我的控制器上的操作。

这是我的Jquery postdata:

var postData = { '__RequestVerificationToken': $('input[name=__RequestVerificationToken]').val(), 'productIds': IDs };

这是我的Jquery帖子:

$.post("MyProducts/DeleteProduct" , postData, function(data) { });

这是我的行动:

public void DeleteProduct(List<int> productIds)
    {
        foreach (int i in productIds)
        {
            _repository.DeleteProduct(i, null);
        }        
    }

我还使用一个对象来存储我的防伪令牌,我想知道如何将它与postdata一起使用。

这是令牌对象:

var token = { '__RequestVerificationToken': $('input[name=__RequestVerificationToken]').val() };

亲切的问候

2 个答案:

答案 0 :(得分:3)

var ids = [1,2];

var data = {
__RequestVerificationToken : token,
productIds : ids
};

$.post(url, data, function() ...

其中,token是你提到的var

答案 1 :(得分:1)

假设您在HTML中拥有所有产品ID,那么使用jqueryForm plugin会更容易:

$("form").ajaxSubmit({url: "MyProducts/DeleteProduct", success: function(response) {
  // Handle the response
}})