ASP.NET MVC 로그인 페이지 작업. DevExtreme 위젯을 사용하고 있습니다. 나는 사용자 이름/암호를 입력하고 로그인 버튼을 클릭하면 는, 제어 조치를 로그인 간다 나는, ModelState.IsValid
이 false
입니다 볼나를 기억하는 이유는 무엇입니까?
이유는, ModelState 보여줍니다 오류 :
The Remember me? field is required.
내 뷰 모델 및 I를 확인 필요에 따라 필드에 태그를 지정하지 않았는지 확인하십시오. 이상한 것은 두 번째로 Login 버튼을 클릭하면 작동하고 ModelState.IsValid는 true입니다 !! 이 두 번째 클릭에서 작동하는 이유
이
은public class LoginViewModel
{
[Required]
[Display(Name = "Email")]
[EmailAddress]
public string Email { get; set; }
[Required]
[DataType(DataType.Password)]
[Display(Name = "Password")]
public string Password { get; set; }
[Display(Name = "Remember me?")]
public bool RememberMe { get; set; }
}
질문, 왜이 필요 내 뷰 모드입니다.
이
는 (그것의bool?
않는
null
될 수 없음)이 html로 소스 A
bool
속성은 항상 필요
<div id="devextreme2"></div>
<script>
jQuery(function($){
$("#devextreme2").dxCheckBox({
"name": "RememberMe",
"value": null,
"text":"Remember me?",
"inputAttr": {"id":"RememberMe"}
});
});
</script>
유일한 이유를 사용하여 기본 값을 설정할 수 있습니다' name = "RememberMe"'그러나 그 값을'null' (또는'true' 또는'false'와 다른 값)로 설정했습니다 - 그리고'bool'은 항상 필요합니다 ('null' 일 수 없습니다) –
당신은 맞아, 확인란은 null로 initilzied입니다, 나는 내 ViewMode에 constructore를 추가하고 false로 필드를 초기화하지만, 여전히 HTML에서 초기 값이 null임을 알 수 있습니다. 그것이 문제이다. 힌트를 주셔서 감사합니다 – FLICKER
나는 심령이 아니에요 :) - 코드를 보여주십시오. –