我无法将事件绑定到@ html.editorfor
我听说它可能与“class”属性的存在有关,但我看不到任何联系。
@Html.EditorFor(model => model.SameAsBaseAddress, new { @onclick = "checkboxcheck()" })
function checkboxcheck() {
//blah...
}
当我使用firebug进行调试并手动添加处理程序时,一切正常。 TextBoxFor,RadioButtonFor等没有剃刀事件绑定的问题。
怎么办?
答案 0 :(得分:3)
EditorFor
扩展程序没有与htmlAttributes
类似的参数TextBoxFor
,请参阅:http://msdn.microsoft.com/en-us/library/system.web.mvc.html.editorextensions.editorfor%28v=vs.118%29.aspx
我建议您将EditorFor
更改为CheckBoxFor
,或者如果您确实要使用EditorFor
,this question建议您创建编辑器模板。
答案 1 :(得分:3)
修改您的EditorFor以改为使用以下内容。我已经使用它将html属性(包括类和onclick)添加到EditorFor,它会生成一个复选框。
@Html.EditorFor(model => model.SameAsBaseAddress, new { htmlAttributes = new { @onclick = "checkboxcheck()" } })
您可以添加更多属性作为逗号分隔列表:
@Html.EditorFor(model => model.SameAsBaseAddress, new { htmlAttributes = new { @onclick = "checkboxcheck()", @class = "checkbox" } })