2014-01-24 114 views
0

下面的代码是我在JavaScript中用来检查单选按钮的选项。这是我在互联网上看到的几件事的汇编,我已经尝试过,但没有成功。我在Using javascript to check if a radio button is selected and return a specific answer based on the selection的示例之后对此代码进行了图案化。此代码仍然无法正常工作。如何使用JavaScript获取单选按钮的选中值

var userInput; 
var shopMethod = document.getElementsByName('Shopping'); 

for (var a = 0; a < shopMethod.length; a++) 
{ 
    If (shopMethod[a].checked) 
    { 
     userInput = shopMethod[a].value; 
    } 
} 

If (userInput == "M") 
{ 
    strShopping = "Mail Order Catalog"; 
} 
If (userInput == "L") 
{ 
    strShopping = "Local Computer Store"; 
} 
If (userInput == "C") 
{ 
    strShopping = "Computer Superstore"; 
}  
If (userInput == "I") 
{ 
    strShopping = "Internet/World Wide Web"; 
} 

<input type=radio name="Shopping" value="M"> Mail Order Catalog</br> 
<input type=radio name="Shopping" value="L"> Local Computer Store</br> 
<input type=radio name="Shopping" value="C"> Computer Superstore</br> 
<input type=radio name="Shopping" value="I"> Internet/World Wide Web 

我希望变量strShopping等于用户的部分是什么,所以它可以被发送到数据库。任何人都可以看到错误在哪里?

回答

0
If (shopMethod[a].checked) 

,而不是一。你的来信我如果大写

更新1:

我只是想表明这改善你的代码。相反,所有if语句都可以这样做:

var hasTable = { 
    "M": "Mail Order Catalog", 
    "L": "Local Computer Store", 
    "C":"Computer Superstore", 
    "I": "Internet/World Wide Web" 
}; 

var strShopping = hasTable[userInput]; 
+0

完美!我想这就是我为避免编程/脚本语言之间的大小写敏感问题而得到的结果。 – Lou

-1

您单选按钮的html语句缺少onclick()函数。 在html声明和你提到的函数之间没有联系,上面是连接你的html元素和你的javascript语句

+0

单选按钮内不需要有'onclick()'。它们的名称在提交表单时会发送到处理输入的外部JavaScript。 – Lou

+0

同意。我错过了document.getElementsByName代码的一部分。 – eshcol

相关问题