在我的document.getElementby标记名中出现问题

时间:2015-03-14 03:03:21

标签: javascript

我已经实现了document.getElementsByName(' subject []');和document.getElementsByName(' regional []');
我不知道为什么它不起作用。如果我使用它正在工作的任何一个。如果主题和区域都必须正常运行我必须做什么。为了样本理解我已经给了这个复选框。这个复选框来自mysql.But它只给出这样的源。如何使用document.getElementsByName进行验证。

可以解决我的代码中的问题吗?我必须在这里做什么。只有主题和区域来自mysql。我希望每个人都能理解这个问题

<form name="f1"action="" method="post">
    subject<input type='checkbox' name='subject[]' value='science'>science<br/>
    <input type='checkbox' name='subject[]' value='maths'>maths<br/>
    Medium<input type='checkbox' name='regional[]' value='Hindi'>Hindi<br/>
    <input type='checkbox' name='regional[]' value='english'>english<br/>
    <input type="submit" name="land" class="butt" value="SUBMIT" onClick="return check();"></form>

Here is my check:
<script>
function  check()
{
//alert('done')
var chk = document.getElementsByName('subject[]');
var reg = document.getElementsByName('regional[]');
var len = chk.length;
var regl=reg.length;
//alert(len);

if(len)
{
for(i=0;i<len;i++)
{
if(chk[i].checked){
return true;
}
else
{
alert('please select the subject');
return false;

}
}}
if(regl)
{
for(i=0;i<regl;i++)
{
if(regl[i].checked){
return true;
}
else
{
alert('please select the regional');
return false;
}
}
}
}
</script>

请检查我在这里给出的条件。可能这也是一个问题,不工作。如果我单独写主题[]它是工作。如果我结合区域[]它不工作。看我的代码

2 个答案:

答案 0 :(得分:1)

if(regl[i].checked){

应该是

if(reg[i].checked){

答案 1 :(得分:0)

document.getElementsByTagName()正如它所说的那样。它通过标签名称获取元素。由于subject[]不是HTML标记名称,当然这行不起作用,但不要担心!您仍然可以通过执行以下操作来获取该元素:

document.getElementsByTagName('input')[0]; //change index number for other inputs on the page

由于第一个<input>标记的名称为subject[],因此这是将返回的元素及其所有属性。