У меня есть небольшая проблема, когда мой 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 не запускается. Пожалуйста, как мне это сделать?
С предоставленной вами информацией, вероятно, потому, что у вас есть скрипт внутри $(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.
Просто переместите секцию скрипта из частичного представления в представлении, которое вы загружаете частично.