jquery ajax数据结果不显示

时间:2013-05-21 13:53:54

标签: c# asp.net-mvc jquery

我的js文件在下面;

$('#DetailMaxGuest').change(function () {

    var result = $('#DetailMaxGuest option:selected').val();
    $('#DetailMaxGuest option:selected').val(result).attr('selected', 'selected');
    var resultparse = parseInt(result);
    var resultid = $('#resultid').val();
    var dateBegin = $('#DetailDatepicker').val();
    var dateEnd = $('#DetailDatepickerEnd').val();
    var price = $('#DetailRates option:first').val();
    var resultm = $('#DetailMaxGuest option:selected').val();
    if (resultm != "Select One") {
        kisi = parseInt(resultm);
    } else {
        kisi = null;
    }
    var message = {
        'resultid': resultid,
        'data': resultparse,
        'dateBegin': dateBegin,
        'dateEnd': dateEnd,
        'price': price
    };
    $("#LoadingImage").show();
    $.ajax({

        type: 'GET',
        url: '/Product/GetMaxGuest',
        data: message,
        dataType: 'json',
        success: function (data) {
            if (data.error) {

                $("#LoadingImage").hide();
                $('#reservation-result').html(data.msg).fadeIn(2000);
                $('#btn_reservation').hide();
                $('#btn_liste').show();
                } if (data.success) {
                $("#LoadingImage").hide();
                if (kisi != null) {
                    $('#PriceDetails').show();
                } else {
                    $('#PriceDetails').hide();
                }
                $('#lblTotalPrice').html(data.toplam).fadeIn(2000);
                $('#lblDeposit').html(data.deposit).fadeIn(2000);
                $('#lblTotal').html(data.totalsum).fadeIn(2000);
                $('#btn_reservation').show();
                $('#btn_liste').hide();

            }
        },
        complete: function () {
            $('#reservation-result').fadeOut(5000);
        }


    });

});

和我的控制器返回消息;

  

存款:“100 $”消息:“”成功:true toplam:“1.220 $”totalsum:“1.320 $”

但是我无法在我的页面上看到任何数据。 js工作,但我看不到数据。

我的剃刀;

<div id="reservation-result" style="width: 100%; height: 80px; display: inline-block; text-align: left; font-size:12px; font-weight: bold; color:brown;">
                                <table id="PriceDetails" style="display: none;">
                                    <tr>
                                        <td style="width: 75%;">Toplam Fiyat</td>
                                        <td style="width: 25%; text-align: right;"><div id="TotalPrice">@Html.Label("lblTotalPrice",new{id="lblTotalPrice", name="TotalPrice"})</div></td>

                                    </tr>
                                    <tr>
                                        <td>Depozito</td>
                                        <td style="width: 25%; text-align: right;">
                                            <div id="Deposit">@Html.Label("Deposit",new{id="lblDeposit", name="Deposit"})</div>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>Genel Toplam</td>
                                        <td style="width: 25%; text-align: right;">
                                            <div id="Total">@Html.Label("Total",new{id="lblTotal", name="GrandTotal"})</div>
                                        </td>
                                    </tr>
                                </table>
                                <div id="LoadingImage" style="display: none;">
                                    <img src="@Url.Content("~/Content/images/prettyPhoto/dark_rounded/loader.gif")" alt="Loading"/>
                                </div>
                            </div>
                        <input id="btn_reservation" class="gradient-button center" type="submit" style="width: 230px;" value="Rezervasyon yap" />
         }
                        <input id="btn_liste" class="gradient-button center" type="submit" style="width: 230px; display: none;" value="Listeye Dön" />

请helpppp :)非常感谢。

3 个答案:

答案 0 :(得分:1)

你的代码中的

我看到了这句话:

if (data.error) {

不应该是:

if (!data.error) {

答案 1 :(得分:1)

您的代码中存在几个问题,

  1. 您在控制器中返回的内容不是有效的JSON。更改控制器以返回有效的JSON数据。它应该如下所示
  2. {
        "deposit": "100 $",
        "msg": "",
        "success": true,
        "toplam": "1.220 $",
        "totalsum": "1.320 $"
    }
    
    1. 要检查if (data.error),您必须从JSON返回它。但是在你的JSON中没有error参数。

答案 2 :(得分:0)

基本上你没有返回有效的JSON数组。在您的情况下,数据以HTML格式返回,您需要以JSON格式返回数据。

像这样使用JSON数组:

 [{
        "deposit": "100 $",
        "msg": "",
        "success": true,
        "toplam": "1.220 $",
        "totalsum": "1.320 $"
    }]

或JSON对象:

{
    "deposit": "100 $",
    "msg": "",
    "success": true,
    "toplam": "1.220 $",
    "totalsum": "1.320 $"
}

谢谢希望这会对你有所帮助。