2013-07-19 1 views
1

JQuery로 약식 IF-ELSE를 수행해야합니다. 내 코드 :Jquery 약식 IF-ELSE

$('#somediv').val() != 0 ? $('#somediv').toggleClass('class1') : $('#somediv').toggleClass('class2'); 

간단한 코드이지만 작동하지 않습니다. 어떤 도움을 주시겠습니까? 사전에 감사

편집 : 이 작품 :

if ($('#somediv').val() != 0) { 
    $('#somediv').toggleClass('class1'); 
}else{ 
    $('#somediv').toggleClass('class2'); 
} 

그러나 속기하지 않습니다 ... 타이 이름 것 ​​알 수 있듯이 somediv 경우 실제로 사업부입니다

+0

당신은 #somediv 내용이 비어 있는지 확인하고 그에 따라 뭔가를하고 싶은 자바 스크립트 바닐라와 함께 사용할 수있는 "경우 - 다른"속기? –

+1

참고로, 사용하려고하는 if/else "속기"는'ternary' 연산자라고하며 jQuery가 제공하는 것이 아닙니다. 기본 자바 스크립트 구문의 일부입니다. – Steve

+0

div에는 실시간으로 1 또는 0을 모니터링 할 수있는 변수가 포함되어 있습니다. –

답변

3

인내심을위한, 값이 입력 요소에만 유효하므로 val() 대신 text() 또는 html()을 사용해야합니다.

+0

div에는 실시간으로 모니터링되는 1 또는 0 만 저장할 수있는 변수가 포함되어 있으며 text() 및 html()을 시도했지만 작동하지 않습니다. .. –

+0

클라우드가 지적했듯이'val()'은'div'에 대해서는 작동하지 않고'input' 필드에 대해서만 작동합니다. 여기 예제를 보시오. [jsfiddle] (http://jsfiddle.net/3D6bn/) – Steve

+0

@SimoneMelloni :이 jsfiddler를보고 이것이 당신이 찾고있는 것인지 확인할 수 있습니까? http://jsfiddle.net/7psC6/ –

0

div (입력 값이 아닌 경우) 값을 얻기 위해 text()를 사용하려고합니다. 무엇을 제공하면 #somediv 그게 도움이 될 것 같습니다.

$('#somediv').text() != 0 ? $('#somediv').toggleClass('class1') : $('#somediv').toggleClass('class2'); 

ternary이라고하며