【问题标题】:How to redirect to another page in Jquery using Razor syntax如何使用 Razor 语法重定向到 Jquery 中的另一个页面
【发布时间】:2017-12-16 19:28:26
【问题描述】:
 $(".category-sub-opition-list li").click(function () {
        var id = $(this).attr("id");
        var category = getUrlParameter('category');
        @{
            var category = Request.QueryString["category"];
            var cat = Model.Items.Where(i => i.Id.ToString() == category).FirstOrDefault();
            if(cat==null)
            {
                Code to Redirec to page
            }
        }
    });

在JQuery中我想检查模型列表,列表中的选项是否可用,如果列表中不存在类别,我想重定向页面。

【问题讨论】:

  • 你不能像那样混合使用 JavaScript 和 Razor。在客户端脚本运行之前,Razor 代码已经在服务器上执行。
  • 我不明白为什么投反对票。这个问题有什么违反规则的地方吗?
  • 是的,我也不明白。这是一个直截了当的问题。

标签: c# jquery asp.net-mvc razor


【解决方案1】:

我不建议用 so may 块的这种方式在 js 中编写 razor。创建一个单独的函数

    @{
        var category = Request.QueryString["category"];
        var cat = Model.Items.Where(i => i.Id.ToString() == category).FirstOrDefault();
        if(cat==null)
        {
            <script>
                function redirectIfNeeded(){
                    window.location = "@Url.Action()";   
                   // yes here using razor should be fine since it is just a line. 
                   //You can also hard code the url. 
                }
            </script>
        }
    }

您现在可以在 var category = getUrlParameter('category'); 下调用您的 js 函数,而无需使用剃须刀代码。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-07-28
    • 2015-03-12
    • 2011-02-22
    • 2011-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多