【问题标题】:Javascript Variables in MVC Partial ViewsMVC 局部视图中的 Javascript 变量
【发布时间】:2015-06-29 04:20:08
【问题描述】:

这可能很简单,但我遇到了困难。我有一个要设置 javascript 变量的视图,在该视图中,我使用 RenderPartial 显示部分视图,如下所示:

@{Html.RenderPartial("MyPartialView");}

我需要访问在我的视图中设置的 js 变量,在我的 PartialView 中。这可能吗?我知道还有其他几种使用模型传递数据的方法,但对于我的独特场景,如果我可以这样做会非常有帮助,因为我已经在传递模型,所以我不能那样做。

【问题讨论】:

    标签: javascript model-view-controller partial-views


    【解决方案1】:

    为什么不将模型传递到局部视图中? 无论如何,您可以将属性添加到窗口对象并在局部视图中使用它。

    更新: 我的意思是在您的视图中打开脚本标记如下:

    <script>
            window.test = "test value";
    </script>
    

    并在您的局部视图中使用它,如下所示:

    <script>
           alert( window.test);
    </script>
    

    顺便说一句,您可以将附加信息传递给您的部分视图。 Html.Partial 接受第三个参数,即 viewData 字典。

    @Html.Partial("PartialViewName", yourModel, new ViewDataDictionary(){ {"AdditionalModel", value} })
    

    你可以通过它的名字在你的局部视图中访问它:

    ViewData["AdditionalModel"]
    

    抱歉回复晚了

    【讨论】:

    • 如前所述,我已经传递了一个模型,而这个特定值不在模型中。你能发布示例代码吗?
    • 我尝试在我的视图中创建一个全局变量,例如 'window.locid=6',然后在我的部分视图中使用 window.locid,但它是未定义的。我做错了什么?
    猜你喜欢
    • 2012-09-24
    • 1970-01-01
    • 2014-02-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多