2014-11-24 4 views
-2

tl; dr 확인란 텍스트 상자의 값을 확인란에 선택한 경우에만 모델에 저장하려고합니다.mvc 면도기 확인란을 면도기 텍스트 상자에 연결

먼저 내 코드가 매우 지저분하다는 것을 알고 있습니다. 나는 또 다른 스택 오버 플로우 문제에 대한 코드를 즉석에서 처리하려고 노력했다. 그래서 그것은 무엇보다도 중요하다. 내가하려고하는 일은 이벤트에 대한 이러한 제한이 있으며 일부는 불량이며 일부는 숫자입니다. 예를 들어, bool은 없지만 최소 연령은 숫자입니다. 이들은 선택 사항이지만 사용자가 설정하지 않아도됩니다. 따라서 제한을 원하지만 모델에 값을 저장한다는 체크 박스가 필요합니다.

<p> 
    <input type="checkbox" id="ageLowCapCB" 
    @(((Model.currentRestrictions.AgeLowCap != null) && 
     (Model.currentRestrictions.AgeLowCap != 0)) ? "checked = 'checked'" : "") 
    /> 
    Low Age Limit 
    @Html.TextBoxFor(e => e.currentRestrictions.AgeLowCap, new {id = "ageLowCap"}) 
</p> 

내가 가지고 이것에 대한 스크립트/jQuery를한다 : 여기에 지금까지 무엇을 가지고

내가에서이 뽑아 질문은 "T"또는 "F"의 값을 사용했다
$("#ageLowCapCB").click(function() { 
    var isChecked = $(this).is(":checked"); 

    $("#ageLowCap").val(isChecked ? /*I don't know what to put here*/); 
}); 

사실과 거짓에 대해 "T"를 붙이는 코멘트 섹션을 채우는 것이 쉬웠습니다 : "F"그리고 그것은 그 것이 었습니다. 하지만 텍스트 상자의 값을 가져 와서 Model.currentRestrictions.AgeLowCap 값으로 설정해야합니다. 누구도 이런 이상한 상황에서해야 할 일에 대한 좋은 아이디어가 있습니까?

+0

먼저, 당신을 강탈 한 사람은 누구나 코멘트를 남겨 두었어야합니다. 그렇지 않으면 완전히 무의미한 운동입니다. grrrr. 그렇게 말하면서, 문제는 불명확하기 때문에 공감할 수 있습니다 - 당신이 원하는 일을 요약 할 수 있습니까? – markpsmith

+0

최소 연령 제한을 적용할지 여부를 정의하려면 확인란을 선택합니다. 하지만 그렇다면 텍스트 상자에 정수 값을 저장하고 싶습니다. 말이 돼? –

+1

예. 컨트롤러에서이 작업을 수행 할 것입니다 - 확인란 상태를 가져오고 선택하면 텍스트 상자 값을 저장하십시오. 너무 단순한 것 같아요. 근본적인 무언가를 놓친다면 사과드립니다. – markpsmith

답변

0

불행히도, 자바 스크립트 값을 C# 뷰 모델로 전달하는 중입니다. 그러나 몇 가지 해결 방법이 있습니다. 당신은 javascript에서 C#으로 전달하고자하는 것을 받아들이는 액션을 생성 할 수 있습니다. 그리고 그 값을 전달할 필요가있을 때, 액션에 대한 ajax 요청을함으로써 그 값을 전달할 수 있습니다. 에스). 거기에서 당신은 데이터베이스, 세션 등 많은 옵션이 있습니다.

0

질문은 내 이해하기에 분명하지 않습니다. 내가 이해하는 것은 정수 값을 허용하는 체크 박스가 디스플레이 된 텍스트 박스에 체크 된 경우입니다. 이 모든 것이 모델 필드입니다.

접근법 1 : 체크 박스 체크 attr이 맞는지 탐지하는 JavaScript 함수를 작성하고, 사용자의 입력을 받아들이도록 텍스트 상자를 표시하십시오. 텍스트 박스가 정수만 받아들이도록 작성하는 함수. Onkeypress 당신은 그 기능을 호출 할 수 있습니다.

접근법 2 : 텍스트 상자에서 사용자의 정수 값을 가져올 필요가없는 경우 유효성 검사 후 확인란을 선택하고 true 인 경우 값을 정수 텍스트 상자에 할당합니다.

- 고마워요