2013-05-21 81 views
0

我的js文件在下面;jquery ajax数据结果不显示

$('#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” 消息: “” 成功:真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 :)非常感谢。

回答

1
在你的代码

我看到这样一句话:

if (data.error) { 

应该说不是:

if (!data.error) { 
+0

不工作.... –

+0

只是PriceDetails不工作...你有任何想法吗? –

+0

resultM的价值是什么,因为这影响价格显示的细节。 另一个问题可能是你的CSS。看看:http://api.jquery.com/show/并搜索显示:无 –

1

你有几个问题在你的代码,

  1. 你有什么回报在控制器中不是有效的JSON。更改您的控制器以返回有效的JSON数据。它应该看起来像下面
{ 
    "deposit": "100 $", 
    "msg": "", 
    "success": true, 
    "toplam": "1.220 $", 
    "totalsum": "1.320 $" 
} 
  1. 要检查像if (data.error)你必须从JSON返回。但在你的JSON中没有error参数。
+0

我的json在控制器中返回;返回 JSON( 新 { 成功=真, 味精= “”, toplam =总+ “$”, 存款= depozito + “$”, totalsum = grandtotal + “$” },JsonRequestBehavior。 AllowGet); –

+0

我找到了。 PriceDetails不能正常工作....?你有什么主意吗? –

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 $" 
} 

感谢希望这会帮助你。

+0

谢谢malik。但我的json回到了控制器中;返回Json(new {success = true,msg =“”,toplam = total +“$”,deposit = depozito +“$”,totalsum = grandtotal +“$”},JsonRequestBehavior.AllowGet); 我没有问题json。我发现了 –

+0

。我认为PriceDetails不工作?你有什么主意吗? –