【发布时间】:2014-06-13 18:42:44
【问题描述】:
我需要为 ASP.NET MVC 剃须刀中的 CheckBoxFor 分配一个 onclick 事件,但它从未被调用。
我有这样的东西,但不起作用:
<script type="text/javascript">
function setCompleteStatus() {
alert("setCompleteStatus called");
}
</script>
@Html.CheckBoxFor(m => m.Process.IsComplete,
new Dictionary<string, object>{
{"id", "p1isCompleted"},
{"onclick","setCompleteStatus()"},
{"data-role", "flipswitch"},
{"data-on-text", "complete"},
{"data-off-text", "incomplete"},
{"data-wrapper-class", "custom-size-flipswitch"}})
这个尝试也不起作用:
<script type="text/javascript">
$("#p1isCompleted").click(
function setCompleteStatus() {
alert("setCompleteStatus called");
}
);
</script>
这种方法导致alert 在页面加载时被调用一次,但在我点击复选框时不会被调用:
<script type="text/javascript">
$(document).ready(
$("#p1isCompleted").click(
alert("setCompleteStatus called");
)
);
</script>
由于data- 属性,我不能使用这样的字典:new {@onclick, "setCompleteStatus('1')"}
顺便说一下,Firefox 的控制台中没有显示 javascript 错误
【问题讨论】:
标签: javascript jquery asp.net-mvc razor