如何在mvc视图中单击页面上的任何位置以重定向另一个页面

时间:2019-06-05 15:17:26

标签: javascript asp.net-mvc

我有查看页面。使用Html.ActionLink完成。但是现在我的老板说我需要单击页面上的任意位置,才能打开另一个页面。我有一些代码,它将打开新标签页,您能给我些帮助

 <script type="text/javascript">
  var popup = function () {
   window.open('@Url.Action("UserLogin", "UserLogin")');
  }
 </script>
 <body onclick="popup()">
    <h1 class="dd">Click anywhere!</h1>
 </body>

这只会打开顶部。您能帮我解决这个问题吗?我需要单击查看页面上的任意位置并打开同一页面。

4 个答案:

答案 0 :(得分:0)

尝试

$( document.body ).click(function() {
alert('Hi I am bound to the body!');
});

或以下

$('body').click(function(){
console.log('Hi I am bound to the body!');
});

答案 1 :(得分:0)

尝试指定“ _self”,这应使用相同的标签。

<script type="text/javascript">
  var popup = function () {
   window.open('@Url.Action("UserLogin", "UserLogin")','_self');
  }
 </script>

答案 2 :(得分:0)

您可以使用$(document).on("click", function(){})函数,如下所示:

$(document).ready(function() {
    $(document).on("click",function() {
        alert("It works.");
      window.location.href = "www.google.com";
    });
    })
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<p> Click anywhere! </p>

答案 3 :(得分:0)

我认为其他人提出了很好的观点和很好的处理方式,但是却误解了您的问题。

要更改脚本以在同一窗口中打开而不是在新窗口中打开,只需修改:

window.open('@Url.Action("UserLogin", "UserLogin")');

收件人:

window.location.href = '@Url.Action("UserLogin", "UserLogin")';

您最初使用的是告诉浏览器在新窗口中明确打开它。

另一方面,

location表示它链接到的对象的URL(位置)(在这种情况下,因为调用window.location,所以它的对象是当前窗口)。更改位置属性时,链接到的对象将反映这些更改,因此窗口的位置将发生变化(为您提供当前页面重定向。)