0

我的项目有一个 ajax get 功能:

$('#DetailMaxGuest').change(function () {
        var result = $('#DetailMaxGuest').val();
        var resultparse = parseInt(result);
        var resultid = $('#resultid').val();
        $('#DetailMaxGuest option:selected').val(result).attr('selected', 'selected');
        var message = {'resultid':resultid, 'data':resultparse};
        $.ajax({
            type: 'GET',
            url: '/Product/GetMaxGuest',
            data: message,
            success: function (data, success) {
                $('#reservation-result').html(success).fadeIn(2000);
            },
            error: function (data, error) {
                $('#reservation-result').html(error).fadeIn(2000);

            }
        });

    });

和我的控制器;

public JsonResult GetMaxGuest(int? data,Guid? resultid)
        {
            var appid =resultid;
            System.Threading.Thread.Sleep(500);
            var firstOrDefault = _bb.Aparts.FirstOrDefault(m => m.ApartID == appid);
            if (firstOrDefault != null)
            {
                var maxguest = firstOrDefault.ApartMaxGuest;
                if (data > maxguest)
                {
                    return Json(new { error=true, msg="Basarisiz" },JsonRequestBehavior.AllowGet);

                }
                if (data <= maxguest)
                {
                    return Json(new { success = true, msg = "Basarili" },JsonRequestBehavior.AllowGet);

                }
            }
            return Json(new { error = true, msg = "Basarisiz" }, JsonRequestBehavior.AllowGet);

        }

并开始传输返回错误:

{"error":true,"msg":"Basarisiz"}

但在我的页面上写道success。为什么我看不到错误信息?

4

2 回答 2

0

返回包含错误消息的 json不会让您进入错误回调

你需要这样做 -

$.ajax({
        type: 'GET',
        url: '/Product/GetMaxGuest',
        data: message,
        dataType:'json',
        success: function (data) {
            if(!data.error){
             $('#reservation-result').html("Success :" + data.msg).fadeIn(2000);
            }
            else{
              $('#reservation-result').html("Error :" +data.msg).fadeIn(2000);
            }
        },
        error: function (data, error) {

        }
});
于 2013-05-11T10:11:45.257 回答
0

将数据类型设为json

   $.ajax({
        type: 'GET',
        url: '/Product/GetMaxGuest',
        data: message,
        dataType: 'json',
        success: function (data) {
            if (data.error) {
               $('#reservation-result').html(data.msg).fadeIn(2000);
            } else {
               $('#reservation-result').html('success').fadeIn(2000);
            }
        },
        error: function (data, error) {
            // you don't have to do this
            // $('#reservation-result').html(error).fadeIn(2000);

        }
    });
于 2013-05-11T10:10:28.797 回答