javascript函数不做任何事情

javascript函数不做任何事情,javascript,Javascript,我有一个函数,我想在表单中隐藏一些文本输入字段。我想要隐藏的所有字段都包含在div“site2”中 <script language="Javascript"> function showHide(value) { if (value=='yes') { document.getElementById(site2).style.display = "none"; document.getElementById(site2).style.display

我有一个函数,我想在表单中隐藏一些文本输入字段。我想要隐藏的所有字段都包含在div“site2”中

<script language="Javascript">

function showHide(value) {
if (value=='yes') {
        document.getElementById(site2).style.display = "none";
        document.getElementById(site2).style.display = "block";
        document.add.addSite2Line1.disabled=true;
    }
    else if (value=='no') {
        document.getElementById(site2).style.display = "inline";
        document.getElementById(site2).style.display = "none";
    }
}
}
    </script>

函数showHide(值){
如果(值=='yes'){
document.getElementById(site2.style.display=“无”;
document.getElementById(site2.style.display=“block”;
document.add.addSite2Line1.disabled=true;
}
else if(值=='no'){
document.getElementById(site2.style.display=“inline”;
document.getElementById(site2.style.display=“无”;
}
}
}
并创建一个下拉框。当选择“否”时,它应显示

<label><span>Single Site?</span><Select name="field" onchange="showHide(this.selectedIndex);"></label>
 <Option value="yes">yes</option>
 <Option value="no">no</option>
 </Select><br /><br /><br /><br />
单一站点?
对
不






但是,当我运行页面时,什么也没有发生

您正在传入selectedIndex,但您正在检查它,就好像它是值一样。。。请尝试以下方法:

<Select name="field" onchange="showHide(this.value);"></label>

Slanec关于
getElementById(site2)
vs
getElementById(“site2”)
的评论也是有效的。如果没有看到页面的其余部分,很难判断,但是如果没有在Javascript中声明名为site2的变量,则可能会收到其他错误。

您正在传入selectedIndex,但您正在检查它,就好像它是值一样。。。请尝试以下方法:

<Select name="field" onchange="showHide(this.value);"></label>

Slanec关于
getElementById(site2)
vs
getElementById(“site2”)
的评论也是有效的。如果看不到页面的其余部分,很难判断,但是如果没有在Javascript中声明名为site2的变量,则可能会收到额外的错误。

这非常简单,只需删除一个额外的大括号即可

function showHide(value) {
if (value=='yes') {
        document.getElementById(site2).style.display = "none";
        document.getElementById(site2).style.display = "block";
        document.add.addSite2Line1.disabled=true;
    }
    else if (value=='no') {
        document.getElementById(site2).style.display = "inline";
        document.getElementById(site2).style.display = "none";
    }
}

它非常简单,只需要在安装前拆下一个额外的支架

function showHide(value) {
if (value=='yes') {
        document.getElementById(site2).style.display = "none";
        document.getElementById(site2).style.display = "block";
        document.add.addSite2Line1.disabled=true;
    }
    else if (value=='no') {
        document.getElementById(site2).style.display = "inline";
        document.getElementById(site2).style.display = "none";
    }
}

您是否绝对确定它是
getElementById(site2)
而不是
getElementById(“site2”)
?前者是变量名(如果没有这样的变量,
undefined
),后者是字符串。尝试
alert(site2)
查看其中包含的值。您的示例Javascript末尾似乎有一个额外的大括号,标签的结束标记似乎位于错误的位置您是否绝对确定它是
getElementById(site2)
而不是
getElementById(“site2”)
?前者是变量名(如果没有这样的变量,
undefined
),后者是字符串。尝试
alert(site2)
查看其中包含的值。您的示例JavaScription末尾似乎有一个额外的大括号,标签的结束标记似乎位于错误的位置。该值也应适用于选择项:我使用值对其进行了测试,并且比使用选择的索引进行了更深入的测试。。。我还出现了其他错误,因为我没有定义site2,但它正在进入if/else块。该值也应该适用于选择项:我使用值对其进行了测试,并且比使用所选索引更进一步。。。我还出现了其他错误,因为我没有定义site2,但它进入了if/else块。这没有帮助,因为传入了选定索引,但函数检查了值。这没有帮助,因为传入了选定索引,但函数检查了值