Tuesday, January 2, 2018

Ajax Calls in MVC | DropDown Binding using AJax

var url = ServerUrl + '/' + controllerName + '/GetChildsAction';

 $.ajax({
            type: "POST",
            dataType: 'json',
            contentType: "application/json; charset=utf-8",
            url: url,
            data: JSON.stringify(postdata),
            async: false,
            success: function (data) {
                for (var i = 0; i < data.length; i++) {

                    html = html + ("");

                }
            },
            error: function (data) {
                // alert(data.responseText + "Fail");
            }

        });



   [HttpPost]
        [CustomAuthorize]
        [ActionName("GetChildsAction")]
        public JsonResult Getempinfo(int Id, int? childId, int rId)
        {   
            var list = EmployeeBL.GetEmpInfo(Id, rid);
            if (childId != 0 && childId != null)
            {
                list = list.Where(v => v.Id != childId).ToList();
            }
            var data = list.Select(m => new SelectListItem()
            {
                Text = m.Name,
                Value = m.Id.ToString()
            }).ToList();
            return Json(data.OrderBy(i => i.Text), JsonRequestBehavior.AllowGet);
        }


 ViewBag.ReleaseDropDown = releaseList.AsEnumerable().Select(p => new SelectListItem { Text = p.ReleaseName, Value = p.ReleaseID.ToString(), Selected = (p.ReleaseID == defaultSelectedReleseID) });

 @Html.DropDownList("ddlPanelSubgroup", new SelectList(Enumerable.Empty()), new { @id = "ddlPanelSubgrps", @class = "ddlExpertPanels ESC-Trigger Prompt-ignore Filter", @multiple = "multiple", data_placeholder = "Choose SubGroup" })

====DropDown with Groups Binding=================

function SetExpertPanelSubGroups() {

    var SubGroups = $("#ddlPanelSubgrps").chosen().val();
    var html = "";
    var obj = { PanelIds: $("#ddlExpertPanels").chosen().val() };

    if ($("#ddlExpertPanels").chosen().val() == "" || $("#ddlExpertPanels").chosen().val() == null) {

        $("#ddlstatus").chosen().val("").attr('disabled', 'disabled').trigger('chosen:updated');

        $("#ddlPanelSubgrps").val('').trigger('chosen:updated');

    } else {

        $("#ddlstatus").removeAttr('disabled').trigger('chosen:updated');

        $.ajax({
            type: "POST",
            dataType: 'json',
            contentType: "application/json; charset=utf-8",
            url: ServerUrl + '/User/GetSubGroupsByPanel',
            data: JSON.stringify(obj),
            async: false,
            success: function (data) {
                // debugger;
                $(data).each(function (ind, grp) {

                    html += '';
                    $(grp._GroupMembers).each(function (index, mem) {

                        html += '';
                    });
                    html += '
';

                });
                $("#ddlPanelSubgrps").empty().append(html).trigger("chosen:updated");
                $("#ddlPanelSubgrps").chosen().val(SubGroups).trigger("chosen:updated");

            },
            error: function (data) {
                alert("Server is Not Responding..!!");
            }



        });
    }
};

==========/used to set the default value for the dropdowns===========
//ctrl is dropdownid
function SetDropDownDefaultValue(ctrl, defaultText) {
    console.log("data" + defaultText);
    var dropdown = $("#" + ctrl);


    $(dropdown).empty();

    if (defaultText != "") {
        $(dropdown).append($('

            text: defaultText,
            value: ""
        }));
    }

    $(dropdown).trigger("chosen:updated");


};

 SetDropDownDefaultValue("ddlVarVariants", "");

No comments:

Post a Comment

javascript Filter/index off

 var family = [{"name":"Jack",  "age": 26},               {"name":"Jill",  "age"...