为了账号安全,请及时绑定邮箱和手机立即绑定

如果尚未选择前一个下拉菜单,我试图阻止某人填写文本输入

如果尚未选择前一个下拉菜单,我试图阻止某人填写文本输入

摇曳的蔷薇 2023-08-18 16:49:39
我的任务是制作一个表单,其中包含标题的下拉菜单、名字、姓氏和电子邮件的文本输入,然后是复选框的兴趣。我已经成功制作了表格,并在表格上出现问题时放置了消息,但是现在我需要阻止某人在没有选择标题或标题 === 的情况下输入名字 -然后我需要对姓氏做同样的事情,但用名字而不是头衔,如果我知道如何做第一个,我应该能够解决这个问题,因为唯一的变化是输入类型。如果有人能帮忙那就太好了:)
查看完整描述

1 回答

?
jeck猫

TA贡献1909条经验 获得超7个赞

非常简单的例子。


默认情况下,这些字段设置为“禁用”。该脚本检查列表中的前一个字段,如果它有内容,则从下一个字段中删除“已禁用”


var list = document.getElementsByClassName('inpt');


for (let i = 0; i < list.length; i++) {

    list[i].addEventListener("change", function () {

        if (this.value.length > 0) {

            checkInputs(this);

        }

    });

}


function checkInputs(x) {

    for (let i = 0; i < list.length-1; i++) {

        if (list[i].id === x.id) {

            var z = document.getElementById(list[i + 1].id)

            z.removeAttribute('disabled');

            z.focus();

        }

    }

}

<select class="inpt" id="first">

    <option value="">Select...</option>

    <option value="one">one</option>

    <option value="two">two</option>

    <option value="three">three</option>

</select>


<input class="inpt" id="name" type="text" disabled>

<input class="inpt" id="surname" type="text" disabled>

<input class="inpt" id="age" type="text" disabled>


查看完整回答
反对 回复 2023-08-18
  • 1 回答
  • 0 关注
  • 62 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信