私はチェックボックスにreadonlyプロパティを入れようとしましたが、ユーザがフィールドをチェック/チェック解除できるようにしています。無効にするとチェックボックスの値を投稿する方法
後で、ユーザーがチェックしたり無効にすることを妨げているディスエーブルを入れようとしました。
フォームを送信しようとしたときに、値が妥当でないチェックボックスがMVCコントローラに渡されていません。
私は隠れた値を入れようとしましたが、変更したときに値を設定しようとしましたが、値をコントローラに渡すことはできませんでした。ここで
は私のコードです:
<div style="width:200px">@Html.CheckBoxFor(m => m.In, new { id = "cbIn", style = "vertical-align:middle;", data_bind = "checked:In,disable:useSettings" })</div>
@Html.HiddenFor(m=>m.In,new { id = "hiddenIn" })
のjQueryコード:
$("#hiddenIn").val(data.In);
function SaveSettings() {
try {
var saveSettingsUrl = "/Settings/SaveSettings";
var serializedForm = $("input,select").serialize();
$.ajax({
type: 'POST',
url: saveSettingsUrl,
async: true,
data: serializedForm,
success: function (data, textStatus, request) {
data = null;
},
error: function (request, status, error) {
handleException(request.responseText);
}
});
}
catch (error) {
showExceptionWindow('Jquery Error:' + error);
}
}
どのように私はそれがフォームポストで無効になっている場合でも、チェックボックスの値を送信することができます。
使用は、チェックボックスの状態を変更することはできませんので、あなたは、このように使用することができますし、あなただけのonclick="return false;"
<input type="checkbox" checked onclick="return false;" onkeydown="return false;"/>
そして、あなたのかみそりの構文でを追加することで、同様のチェックボックスから値を取得することができます