Fanycbox 1.3.4 Ajax проблема с ASP.NET MVC - PullRequest
0 голосов
/ 24 марта 2012

Я использую Fancybox 1.3.4 с ASP.NET MVC 3.

У меня есть следующая ссылка:

<a id="various" href="Like/List/@feed.Id" class="petlikeCount liked">@feed.LikeCount</a>

, а также jquery:

<script type="text/javascript">
        $(document).ready(function () {

            $("#various").fancybox({
                type: 'ajax'
            });              

        });        
</script>

Действие контроллера в контроллере Like:

public JsonResult List(int id)
        {
            return Json("success", JsonRequestBehavior.AllowGet);
        }

Моя проблема в том, что Like / List никогда не вызывается (проверяется с помощью точки останова), а fancybox просто появляется и показывает содержимое "родительской" страницы ....

Я также пытался с контентом iframe возвращать чистый HTML обратно, но я получаю то же странное поведение, что и выше.

Заранее спасибо!

1 Ответ

1 голос
/ 24 марта 2012

Я бы рекомендовал вам использовать помощники HTML вместо жестких кодов:

@Html.ActionLink(
    feed.LikeCount, 
    "List", 
    "Like", 
    new { id = feed.Id }, 
    new { id = "various", @class = "petlikeCount liked" }
)

Еще одна вещь, которую вы должны убедиться, это то, что feed.Id на самом деле является целочисленной переменной, так что когда вызывается действие List, ему правильно передается этот идентификатор.

Так что ваш URL должен выглядеть примерно так: /List/Like/123. И затем, предполагая, что у вас есть маршрут по умолчанию, и вы не перепутали некоторые пользовательские маршруты, нужно вызвать действие List и передать в качестве аргумента правильный идентификатор.

Также я настоятельно рекомендую вам использовать в вашем браузере инструмент отладки javascript, такой как FireBug, в котором вы сможете увидеть любые возможные ошибки в ваших скриптах, а также фактические отправляемые запросы AJAX, которые позволят вам больше легко отлаживать такие проблемы.

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