Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/459.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,我有一个表格2无线电选项,a和b,提交表格时,我希望另一个表格,一个表格用于a,一个表格用于b,根据选项从“显示:无”转到“显示:块”。这是我的 <script> function validateForm() { var x = document.forms["choice"]["choose one"].value; if (x == "A") { document.getElementById("a").style

我有一个表格2无线电选项,a和b,提交表格时,我希望另一个表格,一个表格用于a,一个表格用于b,根据选项从“显示:无”转到“显示:块”。这是我的

<script>
    function validateForm() {
        var x = document.forms["choice"]["choose one"].value;
        if (x == "A") {
            document.getElementById("a").style.display = "block";
            }
        else {
            document.getElementById("b").style.display = "block";
            }
        }   
</script>

函数validateForm(){
var x=document.forms[“choice”][“choose one”].value;
如果(x=“A”){
document.getElementById(“a”).style.display=“block”;
}
否则{
document.getElementById(“b”).style.display=“block”;
}
}   
然后是html

<form action="form.php" method="get" name="choice">
                    0000:<br>
                    <label>
                        <input type="radio" name="choose one" value="A">
                        A
                    </label><br>
                    <label>
                        <input type="radio" name="choose one" value="B">
                        B
                    </label><br>
                    <input type="submit" value="Sub">
                </form>

<form id="a">
</form>

<form id="b">
</form>

0000:
A.
B
  • 您需要在单击提交按钮时调用
    validateForm()
  • 最初隐藏表单,选择表单后,表单将显示
  • 
    函数validateForm(){
    var x=document.forms[“choice”][“choose one”].value;
    如果(x=“A”){
    document.getElementById(“a”).style.display=“block”;
    document.getElementById(“b”).style.display=“无”;
    }否则{
    document.getElementById(“b”).style.display=“block”;
    document.getElementById(“a”).style.display=“无”;
    }
    }
    0000:
    A.
    B
    表格a 表格乙
    添加一个
    onchange
    事件,并在开始时将两个表单设置为
    display:none

    document.querySelectorAll(“input[type='radio']”)。forEach(el=>{
    el.addEventListener(“变更”(evt)=>validateForm(evt))
    })
    函数validateForm(e){
    设a=document.getElementById(“a”)
    设b=document.getElementById(“b”)
    a、 style.display=b.style.display=“无”
    如果(e.target.value==“A”){
    a、 style.display=“block”;
    }否则{
    b、 style.display=“block”;
    }
    }
    #a,
    #b{
    显示:无
    }
    
    0000:
    A.
    B
    表格A 表格乙
    当您提交表单时,它会重新加载页面。因此,在默认情况下,在提交第一个表单后不能显示表单

    因此,您需要使用AJAX提交表单,或者在第一个表单中包含其他两个表单(将它们更改为
    标记,并将它们放在第一个表单中)。使用
    onclick
    方法将submit按钮更改为一个
    元素,以显示表单的第二部分,同时还应显示真正的submit按钮。 当用户在任何字段中键入内容时按[code>enter键,您可能希望禁用提交表单,并禁用使用手机上的软键盘提交表单。
    应该可以通过谷歌找到如何做到每一点。

    欢迎访问。请准确地概述你面临的问题。您可以在此处了解有关如何提出好问题的更多信息: