5

@html.editorfor にイベントをバインドできません

「クラス」属性の存在に関連している可能性があると聞いたことがありますが、まったく関連がありません。

@Html.EditorFor(model => model.SameAsBaseAddress, new { @onclick = "checkboxcheck()" })

function checkboxcheck() {
    //blah...
}

firebug でデバッグし、ハンドラーを手動で追加すると、すべて正常に動作します。TextBoxFor、RadioButtonFor などは、カミソリ イベント バインドに問題はありません。

何をすべきか?

4

2 に答える 2

4

EditorFor を変更して、代わりに以下を使用します。これを使用して、チェックボックスを生成する EditorFor に html 属性 (クラスと onclick を含む) を追加しました。

@Html.EditorFor(model => model.SameAsBaseAddress, new { htmlAttributes = new { @onclick = "checkboxcheck()" } })

カンマ区切りのリストとしてさらに属性を追加できます。

@Html.EditorFor(model => model.SameAsBaseAddress, new { htmlAttributes = new { @onclick = "checkboxcheck()", @class = "checkbox" } })
于 2014-11-19T17:04:45.880 に答える
4

拡張機能には、のようなEditorFor引数がありません。次を参照してください: http://msdn.microsoft.com/en-us/library/system.web.mvc.html.editorextensions.editorfor%28v=vs.118%29.aspxhtmlAttributesTextBoxFor

EditorForに変更することをお勧めしますCheckBoxFor。または、を使用したい場合はEditorForこの質問でエディター テンプレートを作成することをお勧めします。

于 2013-12-20T09:55:19.983 に答える