테스트 사이트 - 개발 중인 베타 버전입니다

indexOf의 결과값에 대한 alert........... 채택완료

코니팡 4년 전 조회 1,903

</p>

<pre>
<script>
    $('#wr_content').change(function(){ // 내용키워드
        var txt = $(this).val();
        if(txt.indexOf('사과') != -1){
            alert('사과는 맛있습니다.');
        }else if(txt.indexOf('바나나') != -1){
            alert('바나나는 길어요..');
        }else if(txt.indexOf('딸기') != -1){
            alert('딸기는 달아요.');
        }
    });
</script></pre>

<p>

 

안녕하세요.

위와 같이 했을대

사과 또는 바나나 또는 딸기 를 입력했을때

각각의 문구가 나옵니다.

 

그런데

사과와 딸기 = 라고 입력하면

사과의 결과만 나오고

바나나와 딸기 = 라고 입력하면

바나나의 결과만 나옵니다.

 

저는

사과와 바나나와 딸기 라고 입력하면

각각의 결과값으로

alert 이 3개 나왔으면 좋겠습니다. ㅠㅠ

 

어떻게해야하는지요?~ㅠㅠ

공부하고 있는데 너무 어렵네요.~

 

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

채택된 답변
+20 포인트
4년 전

if문에서 else if를 사용할 경우 가장 먼저 만족된 조건만 실행되고 if문이 종료됩니다.

각각의 조건식을 한 번씩 실행하고 싶으신 거라면

</p>

<p>        $("#wr_content").change(function () {</p>

<p>            var txt = $(this).val();</p>

<p>            if (txt.indexOf("사과") != -1) {</p>

<p>                alert("사과는 맛있습니다.");</p>

<p>            }</p>

<p>            if (txt.indexOf("바나나") != -1) {</p>

<p>                alert("바나나는 길어요..");</p>

<p>            }</p>

<p>            if (txt.indexOf("딸기") != -1) {</p>

<p>                alert("딸기는 달아요.");</p>

<p>            }</p>

<p>        });</p>

<p>

 

위와 같이 한번씩 if문을 걸어줄 수 있을 듯합니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

코니팡
4년 전
네 감사합니다.
죄송합니다만 추가로 질문드려도 될련지요??ㅠ

절대값으로 "바나나" 가 아닌
두글자씩 "바나" 또는 "나나" 도 서치될수 있게 할 수 있는지요?ㅠㅠ
서야
4년 전
if (txt.indexOf("바나") != -1 || txt.indexOf("나나") != -1) {
alert("바나나는 길어요..");
}

|| 는 논리 연산자로, or와 같은 역할을 합니다.
코니팡
4년 전
감사합니다.^_______________^

댓글을 작성하려면 로그인이 필요합니다.

if( 사과 ...)

 

if( 바나나...)

 

if( 딸기...)

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

4년 전

else if를 if로 해보세요

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인