2013-04-07 50 views
1

這個答案是我的代碼:循環中使用JavaScript和jQuery

$(document).ready(function() { 
    $("input").focus(function() { 
     $(this).css('outline-color', '#559FFF'); 
     $(this).blur(function() { 
      $(this).css("outline-color", "#FF0000"); 
     }); 
    }); 
    $("input").click(function() { 
     var value = $(this).val(function() { 
      $(this).html(""); 
     }); 
    }); 
    $(".awesome").click(function() { 
     var toStore = $("input[name=name]").val(); 
     if (!/^[A-Za-z]+ [A-Za-z]+$/.test(toStore)) { 
      alert("You Must Put a Valid Name"); 
     } else { 
      $("#contain").children().fadeOut(1000); 
      $("#contain").delay(1000).queue(function() { 
       $("#contain").append("<h1>Welcome to My Quiz : " + toStore + "</br>" + 
        "Youll Get 10 Questions To Answer </br> " + 
        "Here Is the First One:Who is Prime Minister of the United Kingdom? </h1>"); 

       var allQuestions = { 
        outquestions:{ 
         question1 : { quest: "Who is Prime Minister of the United Kingdom?", 
          choices: ["David Cameron","Gordon Brown","Winston Churchill","Tony Blair"], 
          correctAnswer: "David Cameron"}, 
         question2 : { quest: "whats dad name?", 
          choices: ["David ","Gordon ","Winston ","Tony "], 
          correctAnswer: "David"} 
        }, 
        correctAnswers: 0 
       }; 

       var outquestions = allQuestions["outquestions"]; 
       for (var question in outquestions) { 
        $("#contain").append("<p>(outquestions[question][quest]</p>"); 
        for (var choice in outquestions[question]["choices"]) { 
         $("h1").append("<form><input type='radio' name=question value=choice></form>"); 
        } 
       } 
       $("#contain").append("<form><input type='submit' value='submit'></form>"); 
       $("#contain").on("click", "input[name=submit]", function() { 
       }); 

      }); 
     } 
    }); 
}); 

我想這部分遍歷的問題,寫之間有:

var outquestions = allQuestions["outquestions"]; 
        for (var question in outquestions) { 
         $("#contain").append("<p>(outquestions[question][quest]</p>"); 
         for (var choice in outquestions[question]["choices"]) { 
          $("h1").append("<form><input type='radio' name=question value=choice></form>"); 
         } 
        } 
        $("#contain").append("<form><input type='submit' value='submit'></form>"); 

afterwads我要把我的一切被循環的問題的答案任何給定的時間顯示單選按鈕和單選按鈕按鈕的值instaed我得到你在圖片中看到的。 這裏有什麼問題? enter image description here

+0

您的代碼中存在很多問題。無法基於圖像對代碼進行疑難解答。提供html並在jsfiddle.net中創建演示。提供的圖片是毫無價值的 – charlietfl 2013-04-07 10:02:22

+0

是的,我知道我的代碼並不完美,並且我還沒有完成這個工作:) – 2013-04-07 10:29:31

+0

因爲你無法阻止某人查看JavaScript,所以在這樣的測驗中作弊是很容易的。 – Sparky 2013-04-07 17:03:27

回答

1

嘗試這樣:

var outquestions = allQuestions["outquestions"]; 
    for (var question in outquestions) { 
     $("#contain").append("<p>(outquestions[question][quest]</p>"); 
     for (var choice in outquestions[question]["choices"]) { 
      $("#contain").append("<h1><input type='radio' name=question value=choice></h1>"); 
     } 
    } 
    $("#contain").append("<input type='submit' value='submit'>"); 
    $("#contain").on("click", "input[name=submit]", function() {}); 

我還沒有測試上面的代碼,但它應該把你的選擇你的問題之間。

+0

不,就是這樣。 – 2013-04-07 10:11:54

+0

還更改以下行 $( 「#含有」)附加(」

(outquestions [問題] [任務]

「);。 此 $(」 #含有 「)附加(」

(outquestions [問題] ['追求']

「); – 2013-04-07 10:14:34

0

我做了一些改動全髖關節置換爲你們和我在這裏的一些想法是我的代碼的結果:

var allQuestions = { 
        outquestions:{ 
         question1 : { quest: "Who is Prime Minister of the United Kingdom?", 
          choices: ["David Cameron","Gordon Brown","Winston Churchill","Tony Blair"], 
          correctAnswer: "David Cameron"} 
        }, 
        correctAnswers: 0 
       }; 

       var outquestions = allQuestions["outquestions"]; 
       for (var question in outquestions) { 
        $("#contain").append("<h1>" + outquestions[question]['quest'] + "</h1>"); 
        for (var choice in outquestions[question]["choices"]) { 
         $("#contain").append("<p><input type='radio' name=question value=choice>" +outquestions[question]["choices"][choice] + "</p>"); 
        } 
       } 

感謝幫助傢伙。