2013-04-11 6 views
0

답안을 임의로 만드는 퀴즈를 만들고 있습니다. 나는 "올바른!" div : 텍스트 상자 값이 다른 div와 동일한지를 보여줍니다.텍스트 상자 값이 다른 div의 내용과 같을 때 div 표시

는 여기에 지금까지있어 무엇 :

$(document).ready(function(){ 
    $("#buttontest").click(function(){ 
     if ($('#full_day').val() == '#answer') { 
      $("#correct").show("fast"); //Slide Down Effect 
     } 
     else { 
      $("#correct").hide("fast"); //Slide Up Effect 
      $("#incorrect").show("500").delay("1000").hide("500"); 
     } 
    }); 
}); 
<p>What is the animal?</p> 
<div id="correct"> 
    That's Correct! 
</div> 
<div id="incorrect"> 
    Sorry, Try again! 
</div> 
<div id="answer">Monkey</div> 
<input type='text' id="full_day"/> 
<input type='button' id="buttontest" value="clickme"/> 
+0

무엇이 질문입니까? –

+0

기본적으로 div 태그 속성 표시 없음 및 ($ ('# full_day') .val() == $ ('# answer') .html()) –

답변

1
if ($('#full_day').val() == $('#answer').text()) 

이 대소 문자를 구분합니다. 그것은 대소 문자를 구별를 만들려면 :

if ($('#full_day').val().toLowerCase() == $('#answer').text().toLowerCase()) 

편집 : 요청으로, 여기에 복수 응답 할 수있는 솔루션입니다 :

$('#check').bind('click', function() { 
    var possibleAnswers = $('#answers').text().toLowerCase().split(' '); 
    var givenAnswer = $('#user-answer').val().toLowerCase(); 
    var isAnswerCorrect = false; 
    for (var indexPossibleAnswers = 0; indexPossibleAnswers < possibleAnswers.length; indexPossibleAnswers++) 
    { 
     if (possibleAnswers[indexPossibleAnswers] == givenAnswer) 
     { 
       isAnswerCorrect = true 
       break; 
     } 
    } 
    if (isAnswerCorrect) 
    { 
     alert('Correct'); 
    } 
    else 
    { 
     alert('Incorrect, try again.'); 
    } 
}); 

Live demonstration.

+0

'대답 '은'div'이므로'val' 속성이 없습니다 ... 대신에 .text()를 사용해야합니다 ... –

+0

바로이 사실을 발견하고 내 게시물을 편집했습니다. – dislick

+0

감사합니다 !!! <3 – user1890129

1
$(document).ready(function(){ 
    $("#buttontest").click(function(){ 

     if ($('#full_day').val() == $('#answer').html()) { 
      $("#correct").show("fast"); //Slide Down Effect 
     } 
     else { 
      $("#correct").hide("fast"); //Slide Up Effect 
      $("#incorrect").show("500").delay("1000").hide("500"); 
     } 
    }); 
}); 

<p>What is the animal?</p> 
<div id="correct" style="display:none;"> 
    That's Correct! 
</div> 
<div id="incorrect" style="display:none;"> 
    Sorry, Try again! 
</div> 
<div id="answer" style="display:none;">Monkey</div> 
<input type='text' id="full_day"/> 
<input type='button' id="buttontest" value="clickme"/> 
+0

텍스트 상자 값이 div와 같은 하나의 wourld exept? div에 "animal pig"가 포함되어 있다고 가정하면 "pig"만 "correct!"라고 표시합니다. div와 "animal"은 항상 무시됩니까? – user1890129

3

을 사용

$('#answer').text() 

대신 단지

'#answer' 

if 문

+0

우리는 이 같은 div 태그 사이의 텍스트? –

+0

그게 좋네. 나는 마음 속에 가정을 가졌다. 만약 내가 기울이지 않으면 div의 가치를 얻었고, 심지어 텍스트도 얻지 못했다. –

+0

예. '

Monkey
'이 this $ ('# answer'). text()'는 "Monkey"를 반환해야합니다. ** 여기에 jsfiddle을 추가했습니다. http://jsfiddle.net/btddn/** –

관련 문제