我必须在按钮点击时重定向到控制器操作,但我收到此错误
`A potentially dangerous Request.Path value was detected from the client (&).`
这是我的代码:
查看/ _Layout.cshtml
<body>
<div id="wrapper">
<div id="tab1">
<div class="tab2">
<div id="test2" class="officebar">
<ul>
<li class="current"><a href="#" rel="home">Main</a>
<ul>
// ..other button code..
<li><span>Logout</span>
<div class="button">
<a href="#" id="Logout" title="Logout">
<div class="logout">
</div>
Logout</a>
</div>
</li></ul></li>
<script>
$("#Logout").click("click", function () {
//window.refresh("./Account/Logoutview");
// "@Url.Action("Logoutview", "Account")";
window.location = "@Url.Action("Logoutview", "Account")";
window.location.href = "@Url.Action("Logoutview", "Account")";
});
</script>
这是我的Logoutview位置:
Views/Account/Logoutview
这是我的输出错误,请帮忙:
EDIT3:
如果我使用
,我可以点击动作方法<li>
<div><a class="button" href="@Url.Action("Logoutview", "Account")" title="Logout">Logout</a>
</div></li>
但我需要使用上面提到的设计。这就是问题所在。
解决方案:我尝试window.location.href = 'Account/Logoutview';
代替window.location.href = "@Url.Action("Logoutview", "Account")";
谢谢你的用户2110309,PKKG,MMohamad Bataineh为你的时间:))
答案 0 :(得分:0)
尝试将其放入web.config
<system.web>
<httpRuntime requestPathInvalidCharacters="" requestValidationMode="2.0" />
<pages validateRequest="false" />
</system.web>
如果您没有正确转发数据,这可能会在您的应用程序中带来风险。我建议将&
符号替换为_
等其他字符。
除此之外,我会尝试将[ValidateInput(false)]
置于您的行动之上。你说它不适合你,但你可能会把它放错了。