簡體   English   中英

簡單測驗不適用於jQuery或JavaScript

[英]Simple quiz not working in jQuery or JavaScript

我正在做一個簡單的測驗,以獲取一個人提交“提交”按鈕時回答的正確問題的數量。 但是,它始終為零。 請幫助。

 $(document).ready(function(){ $('button').click(function(){ var count = 0; if($('[name=q1]').val() == "Delhi"){count++;} if($('[name=q2]').val() == "Lotus"){count++;} alert(count); }); }); 
 <body> <div> <p>Question: What is capital of India?</p> <input type="radio" name="q1" value="delhi"> Delhi <input type="radio" name="q1" value="mumbai"> Mumbai <input type="radio" name="q1" value="kolkata"> Kolkata <input type="radio" name="q1" value="lucknow"> Lucknow </div> <div> <p>Question: What is the national flower of India?</p> <input type="radio" name="q2" value="rose"> Rose <input type="radio" name="q2" value="lotus"> Lotus <input type="radio" name="q2" value="sunflower"> Sunflower <input type="radio" name="q2" value="tulip"> Tulip </div> <button>submit</button> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> </body> 

它總是給出'0',但是如果我選擇'Delhi'和'Lotus',它應該給出的答案是2

兩件事情:

  1. $('[name=q1]').val()將為您提供name="q1"第一個元素的值,而不是選中的元素。 為此,添加:checked

  2. 你比較"delhi""Delhi" ; 情況很重要。

 $(document).ready(function() { $('button').click(function() { var count = 0; if ($('[name=q1]:checked').val() == "delhi") { count++; } if ($('[name=q2]:checked').val() == "lotus") { count++; } alert(count); }); }); 
 <div> <p>Question: What is capital of India?</p> <input type="radio" name="q1" value="delhi"> Delhi <input type="radio" name="q1" value="mumbai"> Mumbai <input type="radio" name="q1" value="kolkata"> Kolkata <input type="radio" name="q1" value="lucknow"> Lucknow </div> <div> <p>Question: What is the national flower of India?</p> <input type="radio" name="q2" value="rose"> Rose <input type="radio" name="q2" value="lotus"> Lotus <input type="radio" name="q2" value="sunflower"> Sunflower <input type="radio" name="q2" value="tulip"> Tulip </div> <button>submit</button> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> 

您的Js代碼有錯誤,您必須選擇選中的輸入,您的代碼僅選擇第一個輸入

 $(document).ready(function(){ $('button').click(function(){ var count = 0; if($('input[name=q1]:checked').val() == "delhi"){count++;} if($('input[name=q2]:checked').val() == "lotus"){count++;} alert(count); }); }); 
 <body> <div> <p>Question: What is capital of India?</p> <input type="radio" name="q1" value="delhi"> Delhi <input type="radio" name="q1" value="mumbai"> Mumbai <input type="radio" name="q1" value="kolkata"> Kolkata <input type="radio" name="q1" value="lucknow"> Lucknow </div> <div> <p>Question: What is the national flower of India?</p> <input type="radio" name="q2" value="rose"> Rose <input type="radio" name="q2" value="lotus"> Lotus <input type="radio" name="q2" value="sunflower"> Sunflower <input type="radio" name="q2" value="tulip"> Tulip </div> <button>submit</button> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js"> </script> </body> 

 $(document).ready(function(){ $('button').click(function(){ var count = 0; if($('[name=q1]:checked').val() == "delhi"){count++;} if($('[name=q2]:checked').val() == "lotus"){count++;} alert(count); }); }); 
 <body> <div> <p>Question: What is capital of India?</p> <input type="radio" name="q1" value="delhi"> Delhi <input type="radio" name="q1" value="mumbai"> Mumbai <input type="radio" name="q1" value="kolkata"> Kolkata <input type="radio" name="q1" value="lucknow"> Lucknow </div> <div> <p>Question: What is the national flower of India?</p> <input type="radio" name="q2" value="rose"> Rose <input type="radio" name="q2" value="lotus"> Lotus <input type="radio" name="q2" value="sunflower"> Sunflower <input type="radio" name="q2" value="tulip"> Tulip </div> <button>submit</button> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> </body> 

嘗試用大寫字母重命名您的值(蓮花=>蓮花等)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM