所以我已经尝试了一切,但我根本无法返回一个小的局部视图并将其放在div元素中。 这是我的父视图
<button id="doctors">Doktori</button>
<button id="apointments"> Pregledi</button>
<div id="someDiv">
</div>
<script>
document.getElementById("doctors").onclick = function () { myFunction() };
function myFunction() {
$("#someDiv").load("@Html.Raw(Url.Action("doctorsview", "HomeController")) ")
}
</script>
我在.load()函数之前放了一些警告(“message”),它显示了一条消息,但是我把它放在.load()之后,它没有显示它。 我曾尝试使用和不使用html.raw()。 这是我的控制器动作
public ActionResult doctorsview()
{
return PartialView("~/Views/_Doktor.cshtml", new Doktor());
}
我哪里错了?
答案 0 :(得分:16)
您不必传递HomeController
的完整名称,在Url.Action()
我们必须传递Controller名称的前缀,当我们创建控制器时,我们必须添加Controller
的后缀在mvc中,当我们在帮助器中使用它时,我们必须只传递没有Controller
后缀的Controller名称:
public class HomeController: Controller
{
public ActionResult doctorsview()
{
return PartialView("~/Views/_Doktor.cshtml", new Doktor());
}
}
这样做:
$("#someDiv").load('@Url.Action("doctorsview","Home")');
你应该把它放在Controller的各个Views目录中,在这种情况下是 Views - &gt;主页