我想创建一个可以被多个视图使用的组件,并且我希望将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");
});
});
你能帮帮我吗?
还是有其他解决方案吗?
答案 0 :(得分:0)
如果你看到按钮,那么你可以尝试这个来调试JS中的代码吗?
$(document).ready(function () {
alert("code loaded");
$(".hswbutton").on("click",function (e) {
alert("htmlhelper click OK");
});
});
也许你异步加载html,或者js没有加载...所以首先警告测试是否加载了js,如果点击了按钮则第二次。只有在dom元素加载页面(例如,不是ajax)
时,你的onclick才有效