Jquery ajax数据结果不显示
本文关键字:显示 结果 数据 ajax Jquery | 更新日期: 2023-09-27 18:14:32
我的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);
}
});
});
和控制器返回消息;
deposit: "100 $" msg: " success: " true topplan: "1.220 $" totalsum: "1.320 $"
但是我在我的页面上看不到任何数据。
我的剃刀;
<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" />
请帮助pppp:)非常感谢。
在你的代码中,我看到这样的语句:
if (data.error) {
应该是:
if (!data.error) {
你的代码中有几个问题,
- 你在控制器中返回的不是一个有效的JSON。更改控制器以返回有效的JSON数据。它看起来应该像
{ "deposit": "100 $", "msg": "", "success": true, "toplam": "1.220 $", "totalsum": "1.320 $" }
- 要检查像
if (data.error)
你必须从JSON返回它。但是在JSON中没有error
参数。
基本上你没有有效的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 $"
}