我有一个控制器函数,该函数以前在URL(我在路由文件中设置)的每个部分中都有整数,但现在参数之一需要是整数数组。这是控制器动作:
public JsonResult Refresh(string scope, int[] scopeId) { return RefreshMe(scope, scopeId); }
在我的javascript中,我有以下内容,但现在需要使scopeId为整数数组。我如何设置要发布到使用jQuery,JavaScript的URL
var scope = "Test"; var scopeId = 3; // SCOPEID now needs to be an array of integers $.post('/Calendar/Refresh/' + scope + '/' + scopeId, function (data) { $(replacementHTML).html(data); $(blockSection).unblock(); }
以下应完成此工作:
var scope = 'Test'; var scopeId = [1, 2, 3]; $.ajax({ url: '@Url.Action("Refresh", "Calendar")', type: 'POST', data: { scope: scope, scopeId: scopeId }, traditional: true, success: function(result) { // ... } });
如果您使用的是ASP.NET MVC 3,则还可以将请求作为JSON对象发送:
$.ajax({ url: '@Url.Action("Refresh", "Calendar")', type: 'POST', contentType: 'application/json; charset=utf-8', data: JSON.stringify({ scope: scope, scopeId: scopeId }), success: function(result) { // ... } });