2013-11-20 3 views
0

if 문을 작동시키는 데 몇 가지 문제가있었습니다. html에는 3 가지 옵션이있는 드롭 다운 메뉴가 있으며 사용자가 선택한 옵션에 따라 제출 버튼을 누른 후 다른 텍스트 세트가 생성됩니다.Statement가 작동하지 않는 경우 - 어떤 아이디어입니까?

function hair() { 
    if (document.getElementById("hair").value == "2") { 
     document.getElementById("background").innerHTML = "Well done, it worked!"; 
    } 
} 

그리고 이것이 내가 자바 스크립트에 대응하고자하는 HTML에 : 나는 기본적를 얻기 위해 노력하고

<div id ="hair"> 
    What colour hair would you like your doll to have? 
    <select name = "hair" id ="hair"> 
    <option id="brown" value="0">Brown</option> 
    <option id="blonde" value="1">Blonde</option> 
    <option id="red" value="2">Red</option> 
    </select> 
</div> 

내가 내 스크립트 머리에 무엇을 가지고 "잘 했어, 일 했어!" 사용자가 '빨간색'을 선택하고 버튼을 누르면 아무도 내가 잘못하고있는 것을 말해 줄 수 있습니까? 나는 아주 초심자이므로 간단한 설명이 많이 감사 할 것입니다! 감사!

+3

hair() 함수를 호출 할 때 – Carlos487

+1

hair() 호출은 어디에 있습니까? – FBHY

+1

이름이 '머리카락'인 두 개의 ID가 있습니다. –

답변

3

당신은 코드 내부의 문제가있다 : 변화에 대한 기능이

  • 중복 사업부의 머리가를 선택

    • 는 호출하지 않습니다를, ID는 고유해야합니다

    시도해보십시오.

    function hair() { 
        if (document.getElementById("select-hair").value == "2") { 
         document.getElementById("background").innerHTML = "Well done, it worked!"; 
        } 
    } 
    

    다음 HTML 사용 :

    <div id ="hair"> 
        What colour hair would you like your doll to have? 
        <select name = "hair" id ="select-hair" onchange="hair()"> 
        <option id="brown" value="0">Brown</option> 
        <option id="blonde" value="1">Blonde</option> 
        <option id="red" value="2">Red</option> 
        </select> 
    </div> 
    
  • +0

    http://jsfiddle.net/isherwood/RAy5U – isherwood

    관련 문제