我有以下代码: 当我点击被拒绝的复选框时它工作正常,它显示了textarea但是当我取消选中被拒绝的复选框时它没有隐藏它。
请帮忙......
<script type="text/javascript">
function checkValue() {
var rejected=document.forms["frmcnt"]["ar"].checked
if (rejected = 'Rejected') {
document.getElementById('xtraInfo').style.display='';
} else {
document.getElementById('xtraInfo').style.display='none';
}
}
</script>
Accepted: <input type='checkbox' name='ar' value='Accepted' />
Rejected: <input type='checkbox' name='ar' value='Rejected' onClick="return checkValue(this)" />
<div id="xtraInfo" style="text-align:center; display:none; font-weight:bold;">
<center>Rejection Detail:</center><br>
<textarea width="900" style="width: 910px; resize:vertical;" name="rejectdt"><?php if( $_SERVER['REQUEST_METHOD'] === 'POST' ) { print_r($_POST['rejectdt']); } ?></textarea>
</div>
答案 0 :(得分:3)
HTML:
Rejected: <input type='checkbox' name='reject' id='reject' value='Rejected' onClick="checkValue()" />
功能:
function checkValue()
{
if(document.getElementById("reject").checked == true)
{
document.getElementById('xtraInfo').style.display='block';
}
else
{
document.getElementById('xtraInfo').style.display='none';
}
}
答案 1 :(得分:2)
document.forms["frmcnt"]["ar"].checked
返回true
或false
,更改为:
if (rejected) {
document.getElementById('xtraInfo').style.display='block';
} else {
document.getElementById('xtraInfo').style.display='none';
}
更新::因为你正在做onClick="return checkValue(this)"
,所以
function checkValue(obj) {
var rejected=obj.checked;
if (rejected) {
document.getElementById('xtraInfo').style.display='block';
} else {
document.getElementById('xtraInfo').style.display='none';
}
}
演示:: jsFiddle
答案 2 :(得分:0)
等于条件语句需要有另一个等号。此外,您在定义被拒绝的变量
的行中关闭了分号function checkValue() {
var rejected = document.forms["frmcnt"]["ar"].checked;
if(rejected == 'true') {
document.getElementById('xtraInfo').style.display='';
} else {
document.getElementById('xtraInfo').style.display='none';
}
}
答案 3 :(得分:0)
您的代码可能存在其他问题,但我确实注意到您正在执行
if (rejected = 'Rejected') {
而不是
if (rejected == 'Rejected') {
(需要两个等号来检查一个值)
答案 4 :(得分:0)
<script type="text/javascript">
function checkValue() {
var rejected=document.forms["frmcnt"]["ar"].checked
if (rejected = 'Rejected') {
document.getElementById('xtraInfo').style.display='';
}
else if(rejected==false)
{
document.getElementById('TextContent').style.display='none';
}
else {
document.getElementById('xtraInfo').style.display='none';
}
}
</script>
<textarea width="900" style="width: 910px; id="TextContent" resize:vertical;" name="rejectdt">