2012-07-16 4 views
0

나는 하나의 HTML 양식을 가지고 -표시 또는 숨기기 폼 요소

<select name = "married"> 
    <option value = "Yes">Yes</option> 
    <option value ="No">No</option> 
</select> 

하면 세> - 시대의 값에

<input type = "text" name = "age" value = "" id = "txt_age"> 

처럼 하나의 텍스트 필드에 내가 좋아하는이 요소를 제시해야 18 결혼 필드는 그렇지 않으면 양식을 숨기고 표시됩니다.이 연령> 18 조건은 데이터베이스에 저장됩니다. 나이 값으로 결혼 필드 토글 (표시/숨기기) 변경. 어떻게해야 javascript/jquery.Please 좋습니다.

자세한 내용은이 모든 필드를 동적으로 생성합니다. 그래서 나는 onchange = "somefuction (condition)"을 추가하려고 생각했습니다. 조건을 만족하면 나이를 표시하고 필드를 표시하는 것은 DB에 표시됩니다.
따라/쇼 itself.But 문제를 숨길 결혼 changes.Then 나이 값을 찾습니다 결혼이 경우 필드는 어떻게 결혼하는 나이 필드를 관찰한다는 것입니다 -

또는

하나의 해결책은 내가 생각할 수 있습니다 또는 자바 스크립트 함수를 호출하십시오.
전체 문제를 설명하지 않아서 죄송합니다.

+0

전화 a를 ** 서버 측 ** txt_age의 변경 이벤트 방법 (조건이 DB에 저장되기 때문에 사용자가 서버 측에서 계산을 필요로하는 경우) (실제로는 꽤 어려운의 초점이 더있을 수 있습니다) 나이를 게시합니다. 반환 값은 "결혼"이 활성화되었는지 여부를 나타내는 부울 값이 될 수 있습니다 (ID도 추가). 더 나은 해결책은 (UI가 이보다 복잡 할 수 있기 때문입니다) 모든 변경에 대해 전체 양식의 데이터 게시물을 포함 할 수 있으며 반환 값은 각 키가 요소의 ID이고 몇 가지 값이 if 그것은 가능하고 가시적입니다. –

+0

임계 값 만 DB (18,이 경우 법이 다른 국가마다 다를 수 있기 때문에)에있는 경우 비교의 피연산자로 숨겨진 필드 (DB의 값으로 채워짐)를 사용할 수 있습니다. 서버 측에서 만든 자바 스크립트 코드에서 간단한 대체). –

+0

안녕하세요, 아드리아누는 당신이 무엇을 말하려고하는지 설명해 주시겠습니까? 이것은 나에게 도움이 될 것입니다. –

답변

1

id = "married"를 선택하여 다음과 같이 사용하십시오.

$("#txt_age").blur(function() { 
    if(parseInt($(this).val() > 18) { 
     $("#married").show(); 
    } else { 
     $("#married").hide(); 
    } 
}); 
+0

히야, 사소한 문제, 아래 내 코드 좀 봐 : 그것의'아이디'그'name' 속성은 주어진 :')' –

+0

나는 대답에 주목했다. 이름을 사용하면 OP에서 같은 이름의 페이지에 여러 요소가 포함될 수 있습니다. 이드로 전환하는 것이 더 낫습니다. –

+0

미안하지만 이걸 찾지 않아. –

0

업데이트 : 나는 루비 레일에서 일한 적이 없습니다. 하지만 데이터베이스에서 값을 가져 와서 숨겨진 필드에 값을 설정할 수 있다고 생각합니다.

한 번에 HiddenField 값에 jQuery를 변경 설정

$(document).ready(function(){ 
$("#txt_age").focusout(function() 
{ 
if(parseInt($("#txt_age").val())>parseInt($("#hiddenfield_id").val())) 
{ 
$("#married").show(); 
} 
else 
{ 
$("#married").hide(); 
} 
}); 
}); 

<select name = "married"> to <select name = "married" id = "married">

+0

히야, 사소한 문제, 아래 내 코드를 봐 : 그것의'id'는'name' 속성이 주어진다. 'B-)' –

+0

예. 방금 지적하고 업데이트했습니다. – Matt

+0