2013-05-21 106 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不工作?你有什麼主意嗎? –