Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net Ajax调用不将数组传递给控制器操作_Asp.net_Ajax_Asp.net Mvc_Asp.net Ajax - Fatal编程技术网

Asp.net Ajax调用不将数组传递给控制器操作

Asp.net Ajax调用不将数组传递给控制器操作,asp.net,ajax,asp.net-mvc,asp.net-ajax,Asp.net,Ajax,Asp.net Mvc,Asp.net Ajax,我正在将数组变量传递给控制器。 来自ajax调用的数组包含数据,但在调用控制器后,它显示count=0 var url = '@Url.Action("UserRoleCompany_AddUserAccess", "UserRoleCompany")'; $.ajax({ url: url, data: { userIDs: userIDs, Organisation: Organisation, RoleName: Ro

我正在将数组变量传递给控制器。 来自ajax调用的数组包含数据,但在调用控制器后,它显示count=0

   var url = '@Url.Action("UserRoleCompany_AddUserAccess", "UserRoleCompany")';

        $.ajax({
            url: url,
            data: { userIDs: userIDs, Organisation: Organisation, RoleName: RoleName, userIDsLength: userIDsLength, UserStatus: UserStatus },
            cache: false,
            type: "POST",
            success: function (data) {
                location.reload(true);
            },
            error: function (reponse) {
                alert("error : " + reponse);
            }
        });
控制器代码如下:

  public ActionResult UserRoleCompany_AddUserAccess(List<int> userIDs, string Organisation, string RoleName, int userIDsLength,int UserStatus)
    {
        LMTUsage objLMT = new LMTUsage();
        LMTDAL objLMTDAL = new LMTDAL();

        objLMTDAL.UserRoleCompany_AddUserAccess(Organisation, RoleName, userIDsLength, UserStatus);

        return RedirectToAction("Index");
    }
public ActionResult UserRoleCompany\u AddUserAccess(列出用户ID、字符串组织、字符串RoleName、int userIDsLength、int UserStatus)
{
LMTUsage objLMT=新LMTUsage();
LMTDAL objLMTDAL=新的LMTDAL();
objLMTDAL.userrolecocompany\u AddUserAccess(组织、角色名称、userIDsLength、UserStatus);
返回操作(“索引”);
}
下面是供参考的屏幕截图,

您不能在
ajax
中将数组作为参数传递,您可以将
userid
转换为
json
字符串,或者将它们组合为字符串,然后传递到控制器端

有关更多详细信息,请访问lucumt

我对表也做了同样的尝试——从表中选择多行并将其发送给控制器,它工作正常

请检查下面的内容并让我知道

    var url = '@Url.Action("UserRoleCompany_UpdateUserAccess", "UserRoleCompany")';

        $.ajax({
            url: url,
            data: { Ids: checkedIds, newUserStatus: UserStatus },
            cache: false,
            type: "POST",
            success: function (data) {
                location.reload(true);
            },
            error: function (reponse) {
                alert("error : " + reponse);
            }
        });
控制器

 public ActionResult UserRoleCompany_UpdateUserAccess(List<int> Ids, int newUserStatus)
    {
        LMTUsage objLMT = new LMTUsage();
        LMTDAL objLMTDAL = new LMTDAL();

        string userRoleIds = String.Join(",", Ids);

        objLMTDAL.UserRoleCompany_UpdateUserAccess(userRoleIds, newUserStatus);

        return RedirectToAction("Index");
        //return RedirectToAction("Index", "UserRoleCompany");
    }
public ActionResult UserRoleCompany\u UpdateUserAccess(列表ID,int newUserStatus)
{
LMTUsage objLMT=新LMTUsage();
LMTDAL objLMTDAL=新的LMTDAL();
string userRoleIds=string.Join(“,”,id);
objLMTDAL.UserRoleCompany\u UpdateUserAccess(userRoleIds,newUserStatus);
返回操作(“索引”);
//返回重定向到操作(“索引”、“用户角色公司”);
}
您可以在屏幕截图中查看下面的现场场景,

在回答中查看我的上述评论。