Javascript в частичном представлении не срабатывает

1

У меня есть небольшая проблема, когда мой javascript попадает на мой частичный вид. Любая помощь будет высоко оценена, это мой код:

Это код контроллера для частичного просмотра. (от контроллера под названием searchController)

 public PartialViewResult PdfPartialView()
    {
        return PartialView();
    }

это код, который открывает частичный вид

 @Ajax.ActionLink("View pdf", "PdfPartialView", new AjaxOptions { UpdateTargetId = "pdfContainer" })

И это код частичного просмотра:

 @model dynamic
<h4>Partial View That display PDF....</h4><br/>
<embed src="C:/Users/ionyejekwe/Documents/Visual Studio 2015/Projects/OnlineSearchLagos/OnlineSearchLagos/assets/img/gtb.pdf" width="1300" height="600" type="application/pdf"></embed>



<script>
    $(document).ready(function () {
        //parent.document.location.reload();
        alert('hello');
        // Handler for .ready() called.
        window.setTimeout(function () {
            location.href = "https://www.google.co.in";
        }, 5000);
    });
</script>

код javascript не запускается. Пожалуйста, как мне это сделать?

Теги:
model-view-controller

2 ответа

0

С предоставленной вами информацией, вероятно, потому, что у вас есть скрипт внутри $(document).ready().

Что вы здесь делаете, это привязка вызова Ajax к ActionLink. Завершенные вызовы Ajax не будут запускать отдельное готовое событие для document, так что скрипт не будет выполнять этот путь.

Что-то, что вы могли бы сделать, это определить функцию самозапуска;

<script>
    (function(){
        //parent.document.location.reload();
        alert('hello');
        // Handler for .ready() called.
        window.setTimeout(function () {
            location.href = "https://www.google.co.in";
        }, 5000);
   })();
</script>

Или, в зависимости от цели скрипта, поместите его в функцию и привяжите к событию OnSuccess для вызова Ajax.

0

Просто переместите секцию скрипта из частичного представления в представлении, которое вы загружаете частично.

  • 0
    Я не хочу, чтобы скрипт запускался при частичном просмотре. перемещение скрипта не сработало
  • 0
    Когда вы визуализируете частичное представление в каком-либо родительском представлении, оно становится частью документа (сгенерированного HTML). Вы используете функцию готовности документа, поэтому не существует такой вещи, как «документ готов, запущенный из частичного просмотра». Он запускается, когда документ (который также содержит HTML из частичного представления) загружается полностью. Этот тег сценария обычно находится внизу родительского представления. JQuery должен быть включен над ним, так что это может привести к вашим ошибкам.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню