Ich habe eine einfache Checkbox, erzeugt mit:asp.net Mvc: Simulation Autopostback für einfache Checkbox
<%= Html.CheckBox("myCB")%>
Wie kann ich einen onChange Handler diesem hinzufügen, dass ein nicht einreichen?
Ich habe eine einfache Checkbox, erzeugt mit:asp.net Mvc: Simulation Autopostback für einfache Checkbox
<%= Html.CheckBox("myCB")%>
Wie kann ich einen onChange Handler diesem hinzufügen, dass ein nicht einreichen?
ein onClick-Handler auf die CheckBox hinzufügen, die die Form der CheckBox gehört einreicht ... schnell, clickhandler codeless Beispiel:
<%= Html.CheckBox("myCB",
new { onClick = "$(this).parent('form:first').submit();" });
(Beispiel auf jeden Fall nicht für ihre Richtigkeit überprüft)
Wenn Sie nur eine Form, und verwenden jQuery nicht (Sie sollten durch die Art und Weise sein,) versuchen Sie dies:
<%= Html.CheckBox("myCB",
new { onClick = "document.form.submit();" });
Dies ist in der Nähe, die eigentliche Syntax ist document.forms [0] .submit() – chris
ich kann es sehr empfehlen dieses jQuery zu unterstützen, weil sie i macht Es ist einfacher, das Verhalten einer Checkbox in der gesamten Site hinzuzufügen, indem der Selektor entweder ID- oder klassenbasiert ist. Dann könnten Sie das Skript irgendwo auf der Seite oder in einer externen .js-Datei ablegen.
<script language="javascript" type="text/javascript">
$('#myCB').click(function() { $(this).parent('form:first').submit(); });
</script>
Alternativ könnte der Selektor klassenbasiert sein (oder irgendein Attribut für diese Angelegenheit). Mehr Infos hier: http://docs.jquery.com/Selectors
Ich werde wahrscheinlich am Ende auf andere Projekte verwenden, aber für jetzt ist es nur ein Ort - danke, obwohl. – chris
aber funktioniert gut :) – chris
Wenn dieser Code funktionieren sollte, muss das Kontrollkästchen direkt unter dem 'Formular' sein. Verwenden Sie: '$ (this) .parents ('form: first'). Submit();' stattdessen. – RickardN