我的javascript进入部分视图时遇到了一些挑战。任何帮助将受到高度赞赏 这是我的代码:
这是部分View的控制器代码。 (来自名为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代码。 请问我该怎么做?
答案 0 :(得分:0)
只需从正在加载部分视图的部分视图中移动脚本部分。
答案 1 :(得分: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>
或者,根据脚本的用途,将其放在函数中并将其绑定到Ajax调用的OnSuccess
事件。