Wednesday, 20 July 2016

Different approaches to make ajax call in MVC

No comments
JQUERY

$.ajax({
                    type: "GET",
                    url: "@Url.Action("GetZipcode", "Default")",
                    data: { postalcode: $(this).val() },
                    async: true,
                    contentType: "application/json; charset=utf-8",
                    dataType: "json",
                    success: function (responseData) {
                        debugger
                        if (responseData != null && responseData != undefined && responseData != "") {
                            $('#city').val(responseData.city);
                            $('#stateid').val(responseData.stateid).trigger("chosen:updated");;
                        }
                        else {
                            $('#city').val('');
                            $('#stateid option').eq(0).attr('selected', 'selected');
                            $("#stateid").trigger("chosen:updated");
                        }
                    },
                    error: function (e) {
                        $('#city').val('');
                        $('#stateid option').eq(0).attr('selected', 'selected');
                        $("#stateid").trigger("chosen:updated");
                    }
                });


Controller

 public string GetZipcode(string postalcode)
        {
            var postalCodesRepository = uow.Repository<PostalCodesRepository>();
            var postalcodeData = postalCodesRepository.GetDataByZip(postalcode);
            return Newtonsoft.Json.JsonConvert.SerializeObject(postalcodeData);

        }

 public JsonResult GetZipcode()
        {
             var postalCodesRepository = uow.Repository<PostalCodesRepository>();
            var postalcodeData = postalCodesRepository.GetDataByZip(postalcode);
            return Json(postalcodeData , JsonRequestBehavior.AllowGet);
        }