предупреждение не отображается с $ .getJSOn asp.net MVC3 - PullRequest
0 голосов
/ 11 июля 2011

У меня есть actionlink в моем masterlayout, как это:

 @Html.ActionLink("Order Your Free Report 1", "CheckValue", "Product", null,new { id = "checkExists" })

У меня есть метод действия, подобный этому:

  public ActionResult CheckValue() {
            bool result = true;
            ViewData["checkCondition"] = true;
            return Json(result, JsonRequestBehavior.AllowGet);
        }

, и функционирую так:

$(function () {
    $('#checkExists').click(function () {
     $.getJSON(this.href, function (result) {
            alert(result);
            if (result) {
                alert('the record exists');
            }           
        });
        return false;
    });
});

Когда я нажимаю на ссылку, предупреждение не отображается.Но если я использую так:

 $(function () {
  $('#checkExists').click(function () {

        var condition =new Boolean('@ViewData["checkCondition"]');
        if (condition) {
            alert("message");
        }
   return false;
    });
});

Это работает.Подскажите, пожалуйста, почему первый не работает?

1 Ответ

0 голосов
/ 11 июля 2011

попробуйте обернуть this в $(this)

$(function () {
    $('#checkExists').click(function () {
     $.getJSON($(this).attr('href'), function (result) {
            alert(result);
            if (result) {
                alert('the record exists');
            }           
        });
        return false;
    });
});

версия AJAX

   $(function () {
      $('#checkExists').click(function () {

       $.ajax({
         url: $(this).attr('href'),
         type:'GET',
         success: function (result) { ... },
         dataType: 'json',
         error:function(jqXhr,textStatus, errorThrown){
             alert("Oops ");
             alert(jqXhr.responseText);
             alert(jqXhr.status);
         }
            });
          return false;
        });
    });

попробуйте это и скажите, какие оповещения появляются

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...