从返回的JSON字符串

时间:2018-01-13 14:38:42

标签: jquery json ajax

我是jQuery的新手,并尝试根据下拉列表的选择从SQL数据库中获取数据。我已经管理了AJAX调用,看起来好像数据返回是一个有效的JSON格式。但是,我无法弄清楚如何从JSON字符串中获取其中一个键:值对。我通过搜索互联网尝试了所有可以找到的东西:

        $("#cmbFacilityName").change(function () {
            $("#hdnMinimumDaysInAdvance").val = ""

            //alert('Selected value: ' + $(this).val());
            if ($(this).val() != '') {

                var organizationKey = $('#hdnOrganizationKey').val();
                var facilitySpaceKey = $("#cmbFacilityName").val();
                //alert(facilitySpaceKey)

                GetMinimumDaysInAdvance(organizationKey, facilitySpaceKey)

            }


        });

function GetMinimumDaysInAdvance(organizationKey,facilitySpaceKey){             $就({                 输入:" GET",                 url:" /Facility/View/FacilityReservation.aspx/GetMinimumDaysInAdvance",                 data:{intOrganizationKey:organizationKey,intFacilitySpaceKey:facilitySpaceKey},                 contentType:" application / json;字符集= UTF-8&#34 ;,                 dataType:" json",                 成功:功能(响应){

                var obj = response.d;

                //object = JSON.parse(response);



                //var x = JSON.stringify(response);
               // console.log(x.property_actually_now_defined);

                //var obj = response
                //var minHours = obj["MinNbrOfHours"];

             //   var json = $.parseJSON(response);
                //$("#hdnMinimumDaysInAdvance").html(data.MinNbrOfHours);
                   // obj = JSON.parse(response);
                //var parsedJSON = $.parseJSON(response);

                alert('Field: ' + obj.MinNbrOfHours);

               // $("#hdnMinimumDaysInAdvance").val(response.d.MinNbrOfHours);

                //var minNbrOfHours = JSONobj.entity.entries.MinNbrOfHours;
                //alert('Returned value: ' + minNbrOfHours);
                //$("#hdnMinimumDaysInAdvance").text(msg.d)

            },
            error: function (msg) {
                alert("error:" + JSON.stringify(msg));
            }
        });
    }

我的代码隐藏中的方法:

<System.Web.Services.WebMethod()>
<ScriptMethod(UseHttpGet:=True, ResponseFormat:=ResponseFormat.Json)>
Public Shared Function GetMinimumDaysInAdvance(ByVal intOrganizationKey As Int32, ByVal intFacilitySpaceKey As Integer) As Object


    Dim FacilityRatesBE As New FacilityRatesBE
    Dim FacilityRatesDAL As New FacilityDAL

    FacilityRatesBE = FacilityRatesDAL.GetFacilityRatesByFacilityKey(intOrganizationKey, intFacilitySpaceKey)

    Return JsonConvert.SerializeObject(FacilityRatesBE.MinNbrOfHours)

End Function

感谢任何可以帮助我的人。我已经尝试了所有我能想到的选择。显然,我缺少或不了解某些事情。

1 个答案:

答案 0 :(得分:0)

根据您的评论,您的json响应中的“d”值似乎是一个字符串,因此您应该能够将其解析为

var props = JSON.parse(response.d); 
console.log(props.MinNbrOfHours);