【问题标题】:Razor Helper in App_Code and JavascriptApp_Code 和 Javascript 中的 Razor 助手
【发布时间】:2016-02-11 10:47:29
【问题描述】:

我想创建一个可以被多个视图使用的组件,并且我想关联 Javascript 来操作我的组件中的元素。 所以我在 App_Code RAZOR 中创建了一个 HtmlHelper,如下所示:

@helper HswToolbar()
{

    <header>
        <button class="btn btn-block btn-primary btn-flat pull-left hswbutton">Quitter</button>

        <button class="btn btn-block btn-primary btn-flat pull-right hswbutton">Détail</button>
    </header>


}

在 Index.cshtml 中,我有一个文件可以让我管理与触发操作的用户的交互。但它从未实现。 例如,在 _Layout 中使用此代码:

@Scripts.Render("~/Scripts/hsw/HtmlHelper.js")

还有我的 JS:

$(document).ready(function () {

    $(".hswbutton").click(function (e) {
        alert("htmlhelper click OK");
    });
});

你能帮帮我吗? 还是有其他解决方案?

【问题讨论】:

  • 外部JS文件里有什么?只需将其包含在脚本包中即可。
  • “它不起作用”不是很具体。这当然应该工作,但 cmets 不是代码的地方......请编辑您的答案以包含所有相关代码。

标签: javascript razor asp.net-mvc-5


【解决方案1】:

如果你看到按钮,那么你可以试试这个以调试 JS 中的代码吗?

$(document).ready(function () {
    alert("code loaded");
    $(".hswbutton").on("click",function (e) {
        alert("htmlhelper click OK");
    });
});

也许你异步加载了 html,或者 js 没有加载......所以首先警报测试是否加载了 js,然后再测试是否点击了按钮。仅当页面加载了 dom 元素(例如,不是 ajax)时,您的 onclick 才有效

【讨论】:

    猜你喜欢
    • 2011-09-09
    • 1970-01-01
    • 2013-07-12
    • 1970-01-01
    • 2013-11-24
    • 2019-09-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多