Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何动态显示文本框的值_Javascript_Html - Fatal编程技术网

Javascript 如何动态显示文本框的值

Javascript 如何动态显示文本框的值,javascript,html,Javascript,Html,我有3个单选按钮批准和拒绝,4个文本字段和文本框 如果单击r1,则所有文本字段和文本框都应隐藏。但如果单击r2和r3,则应显示文本字段和文本框 这是我使用的代码 如果(已批准。已检查==真){ 当我单击这些单选按钮时,此代码第一次起作用。但是,如果我单击“拒绝”,然后单击“批准”,则此代码不起作用。在第一个选项中,而不是“原因”。style.visibility=“hidden您可以使用jQuery函数。hide() and.show() $(函数(){ $('input[type=“radi

我有3个单选按钮批准和拒绝,4个文本字段和文本框

如果单击r1,则所有文本字段和文本框都应隐藏。但如果单击r2和r3,则应显示文本字段和文本框

这是我使用的代码

如果(已批准。已检查==真){


当我单击这些单选按钮时,此代码第一次起作用。但是,如果我单击“拒绝”,然后单击“批准”,则此代码不起作用。

在第一个选项中,而不是“原因”。style.visibility=“hidden您可以使用jQuery函数。hide() and.show()


$(函数(){
$('input[type=“radio”]”)。更改(函数(){
如果(this.id==r1){
$('#textes').hide();
}
其他的
{
$('#textes').shwo();
}
})
如果(已批准。已检查==真)
})
/*您的查克文本字段和文本框*/

不要混合显示和可见性属性,请使用其中一种。显示属性为:内联|块|列表项|内联块|表格|内联表格|表格行组|表格页眉组|表格行|表格列组|表格单元格|表格标题|无|

可见性的有效值为:可见|隐藏|折叠|继承

简单的回答是:使用可见而不是显示

因此,您的代码可以是(假设变量是对合适的DOM元素的引用):


请注意,通过将表单控件放在另一个元素(例如div)中并将其隐藏,隐藏表单控件会更简单。但为什么不禁用它们呢?隐藏和显示表单控件可能会让用户感到烦恼、分心或困惑。

根据您的示例和上面的注释,这是您想要的吗

标记:

<form>
    <input type="radio" name="rdo" id="r1" />
    <label for="r1">Approved</label>
    <input type="radio" name="rdo" id="r2" />
    <label for="r2">Rejected</label>
</form>
<div id="accepted">
    <p>This is the accepted block.</p>
</div>
<div id="rejected">
    <p>This is the rejected block.</p>
</div>
#accepted, #rejected
{
    display:none;
}
$(function(){
    $('#r1').click(function(e){
        $('#accepted').show();
        $('#rejected').hide();
    }); 

        $('#r2').click(function(e){
        $('#accepted').hide();
        $('#rejected').show();
    }); 
});
jQuery:

<form>
    <input type="radio" name="rdo" id="r1" />
    <label for="r1">Approved</label>
    <input type="radio" name="rdo" id="r2" />
    <label for="r2">Rejected</label>
</form>
<div id="accepted">
    <p>This is the accepted block.</p>
</div>
<div id="rejected">
    <p>This is the rejected block.</p>
</div>
#accepted, #rejected
{
    display:none;
}
$(function(){
    $('#r1').click(function(e){
        $('#accepted').show();
        $('#rejected').hide();
    }); 

        $('#r2').click(function(e){
        $('#accepted').hide();
        $('#rejected').show();
    }); 
});

发布代码示例时,请尝试使用格式化工具。(这次为您解决了此问题):]Hmm.
display:none
visibility:hidden
不是完全相似的。我会用其中一个,但不是两个。@TiesonT。我也尝试过不使用display:none。即使不起作用,标题也与你的问题无关。在我的回答中,我使用jQuery,你知道jQuery吗?我还没有使用jQuery。那么如果您可以放弃使用JavaScript的解决方案,这将是一个非常好的解决方案。这很好。感谢您宝贵的快速建议。