【问题标题】:Send two parameters from controller to Ajax | Asp.Net从控制器发送两个参数到 Ajax |网络
【发布时间】:2020-05-30 09:21:37
【问题描述】:

我有一个问题,是否可以将两个参数从控制器发送到 Ajax 以供查看?

我有两个存储数据的变量

我需要一个最优解

我试过了:

控制器:

 [HttpGet]
        public async Task<ActionResult> GetDepartmentAndManager(string userId)
        {

            var danePracownika = _uzytkownicyContext.Uzytkownicy
                                                    .Where(x => x.Id == IntIdCzlowieka)
                                                    .Select(s => new
                                                    {
                                                        UserDepartament = s.Departament,
                                                        UserManager = s.ManagerLogin

                                                    });


            var userDetailsAU = _ecpContext.AC_Merge_V
                                           .Where(x => x.Id == IntIdCzlowieka)
                                           .Select(s => new
                                           {
                                               WymiarEtatu = s.WymiarEtatu,
                                               NormaDzienna = s.NormaDzienna

                                           });


            return Json(danePracownika, userDetailsAU);
        }


阿贾克斯 | javascript/视图:

  $.ajax({

            url: "@Url.Action("GetDepartmentAndManager", "Uzytkownicy")",
            type: "GET",
            dataType: "json",
            contentType: "application/json; charset=utf-8",
            data: {"userId": JSON.stringify(userId)},
            cache: false,
            success: function (data, user) {
                $("#Id_department")
                    .dxTextBox("instance")
                    .option("value", data[0].UserDepartament);
                $("#Id_manager")
                    .dxTextBox("instance")
                   .option("value", data[0].UserManager);
            }

        });

【问题讨论】:

    标签: javascript c# asp.net ajax asp.net-core


    【解决方案1】:

    将这些值作为对象的属性返回:

    return Json(new { data = danePracownika, user = userDetailsAU });
    

    然后在响应中它们将是结果的属性:

    success: function (result) {
        $("#Id_department")
            .dxTextBox("instance")
            .option("value", result.data[0].UserDepartament);
        $("#Id_manager")
            .dxTextBox("instance")
            .option("value", result.data[0].UserManager);
        // I assume you also want to use result.user somewhere...
    }
    

    【讨论】:

      猜你喜欢
      • 2013-05-03
      • 2017-03-05
      • 1970-01-01
      • 2020-11-19
      • 2012-07-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-02
      相关资源
      最近更新 更多