Я нашел ответы на подобные вопросы во многих местах, но у меня не получилось, даже скопировав / вставив код !
Я занимаюсь разработкой приложения MVC / C #, и у меня есть свойство bool, подобное следующему:
public bool IsMarried { get; set; }
На стороне просмотра у меня есть следующий код для представления свойства:
<label class="radio-inline">
@Html.RadioButtonFor(model => model.IsMarried , true)Yes
</label>
<label class="radio-inline">
@Html.RadioButtonFor(model => model.IsMarried , false)No
</label>
Моя проблема заключается в том, что, куда бы я ни отправил форму, я получаю все остальные нормальные поля (текст), за исключением того, что логическое свойство всегда true
Как я уже говорил, я нашел много решений, таких как это , но я не знаю, почему это не сработало для меня.
Добавлено автором:
Я хотел добавить к этому вопросу, чтобы все было видно. В дополнение к приведенному выше коду я использую Ajax
для отправки формы.
Это код Ajax:
function SaveWebFormToDatabase() {
var formData = new FormData();
//Append the other textboxes with the form data
formData.append("LastName", $("#LastName").val());
formData.append("FirstName", $("#FirstName").val());
formData.append("IsMarried", $("#IsMarried").val());
$.ajax({
type: "POST",
url: "../User/SaveFirstWebForm",
data: formData,
processData: false,
contentType: false,
success: function (data) {
$('#loading_div').hide();
},
error: function (exception) {
console.log(exception);
}
});
}
На стороне контроллера это метод, который принимает вызов:
[HttpPost]
public JsonResult SaveFirstWebForm(WebApplicationFirstPhase model)
{
string Nme = model.FirstName + model.LastName;
bool ArmedFBit = model.IsMarried;//this is always true!
return Json("");
}