У меня есть форма с полем и флажок в форме Ajax в модальном всплывающем окне, когда пользователь вводит данные в текстовое поле и нажимает, чтобы отправить значения, и Modal закрыт , Однако, если пользователь вводит значение в текстовое поле, а затем проверяет флажок, который будет отправлен формой, и представление вернется к модалу в это время, если флажок установлен. Мне нужно оставить форму, чтобы пользователь мог отправить другую запись , Проблема в том, что текстовое поле поддерживает свое состояние, чего я хочу, и флажок флажка, но Базовое значение флажка возвращается к false, даже если флажок по-прежнему установлен ...
Немного в тупике.CheckBox Not Binding в PartialView AJAX PostBack
@using (Ajax.BeginForm("SaveValues", "ControllerName", new AjaxOptions()
{ HttpMethod = "Post",
OnComplete = "ChkForCheckBox();"
}))
{
@Html.TextBoxFor(x => x.DDate)
@Html.CheckBoxFor(x => x.Dupe)
<button type="submit" >Save</button>
}
и в контроллере.
public void SaveValues(string DDate, bool Dupe)
{
var rslt = repo.Post(DDate);
}
JS.
function ChkForCheckBox(){
var rslt = $('#Dupe').prop('checked');
if(!rslt){
//Close Modal
}
}
Однако после отправки Ajax CheckBox по-прежнему проверяется, но проверка подлинности JS показывает false? Если я прокомментирую CloseModal и просмотрю код, значение Value равно False? но если я отправляю сообщение, это происходит как правда? Проверка ChkForCheckBox() снова, и он показывает false .....
Я чего-то не хватает.
Я считаю, что решил, но все еще не уверен, почему. если я добавлю класс в этот флажок и сделаю то же самое .prop ('checked') в класс, он работает так, как ожидалось, я думаю, что он имеет какое-то отношение к способу работы CheckBoxFor(). –
Итак, когда вы публикуете второй раз (после отправки один раз с установленным флажком) это значение на контроллере true или false? – JB06
, если флажок установлен, значение, которое отправляется обратно во второй столбец, равно True, но если я взаимодействую с флажком, используя JQuery и его идентификатор, он возвращает false. Даже Источник показывает, что его ложь. –