输入阻止提交表格

蒂莫

所以我正在写一个看起来像这样的脚本

<html>

CODE HTML WITH FORM ACTION POST

<script>
function chide() {
	document.getElementById("ccin").style.display = 'none';
    document.getElementById("naiss").style.display = 'none';
    		document.getElementById("account").style.display = 'none';


}
function ccheck(x) {
	chide();
	if(x == "variable1") {
		document.getElementById("account").style.display = '';
		document.getElementById("naiss").style.display = '';	}
		if(x == "variable2") {
		document.getElementById("account").style.display = '';

	}


</script>

<div>
                                        <td>
<tr><td width="560"><label> <font face="tahoma"> Your infos : </font></label></td>
                      <td width="">
                        <select style="width: 180px;" class="r_ddc_select" name="infos" onchange="ccheck(this.options[this.selectedIndex].value);" required="required">
                    <option value="">Select</option>
                    <option value="variable1">XXX</option>
                    <option value="variable1">YYY</option>
                    <option value="variable2">ZZZ</option>
                   

<input type="text" name="bithdate" required="" >

<input type="text" name="account" required="" >

<input type="text" name="ccin" required="" >

问题是,当输入未显示,例如variable2仅显示输入帐户时,我无法提交表单,因为显然其他输入阻止了它,即使它们未显示在页面上,我也需要所有输入带有必需的选项

哈维

required只要输入是不可见的,只要它是DOM的一部分,属性将始终阻止表单提交。作为一个简单的解决方法,我建议您document.getElementById("account").required = false;在隐藏时禁用必选,并在显示时再次启用。

编辑:改进功能建议

function chide() {
    document.getElementById("ccin").style.display = 'none';
    document.getElementById("naiss").style.display = 'none';
    document.getElementById("account").style.display = 'none';


    document.getElementById("ccin").required = false;
    document.getElementById("naiss").required = false;
    document.getElementById("account").required = false;
}
function ccheck(x) {
    chide();
    if(x == "variable1") {
        document.getElementById("account").style.display = '';
        document.getElementById("naiss").style.display = '';

        document.getElementById("account").required = true;
        document.getElementById("naiss").required = true;
    } else if(x == "variable2") {
        document.getElementById("account").style.display = '';
        document.getElementById("account").required = true;
    }

}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章