首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如果Textfield包含某个值,则禁用下拉列表

如果Textfield包含某个值,则禁用下拉列表
EN

Stack Overflow用户
提问于 2022-10-11 12:48:04
回答 2查看 24关注 0票数 0

在HTML和Javascript中,我试图创建一个符合以下规则的条件,这是有问题的:

如果第一个文本框包含某个单词,请禁用以下下拉菜单.如果它不包含特定的单词,保持启用它。

到目前为止,我已经有了这个代码

代码语言:javascript
复制
var noSample = "HW8020";
const interval = setInterval(function() {
      // method to be executed;
      function codeCheck() {
        var x = document.getElementById("form-RequestAQuoteUK-9bbb_Products_Interest_Value").value;
      }
      function validateSample() {
      if ( x == noSample) {
        document.getElementById(
          "form-RequestAQuoteUK-9bbb_DropDown_Samples_SelectedValue"
        ).disabled = true;
      } else {
        document.getElementById(
          "form-RequestAQuoteUK-9bbb_DropDown_Samples_SelectedValue"
        ).disabled = false;
      }
    }
}, 5000);

noSample变量是当输入到文本字段时将禁用下拉列表的代码。I不是我命名的选择,但我对Javascript并不熟悉,我正试图解决我工作的公司的一个问题!

有什么想法吗?

EN

回答 2

Stack Overflow用户

发布于 2022-10-11 13:12:54

您应该使用事件input而不是setInterval,并使用indexOf检查input.value是否包含某些值。

代码语言:javascript
复制
var noSample = "HW8020";
let input = document.getElementById(
    "form-RequestAQuoteUK-9bbb_Products_Interest_Value",
);

input.addEventListener("input", () => {
    validateSample(input.value)
});

function validateSample(inputValue) {
    let selectEl = document.getElementById(
        "form-RequestAQuoteUK-9bbb_DropDown_Samples_SelectedValue",
    );
    if (inputValue.indexOf(noSample) > -1) {
        selectEl.disabled = true;
    } else {
        selectEl.disabled = false;
    }
}
票数 0
EN

Stack Overflow用户

发布于 2022-10-11 13:13:29

按照注释中的建议,您可以向Products_Interest_Value输入中添加一个事件侦听器,然后根据是否匹配noSample值启用或禁用下拉列表。

代码语言:javascript
复制
const noSample = "HW8020";

document.querySelector("#form-RequestAQuoteUK-9bbb_Products_Interest_Value").addEventListener("input", e => {
  document.querySelector("#form-RequestAQuoteUK-9bbb_DropDown_Samples_SelectedValue").disabled = (e.target.value == noSample);
});

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74028429

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档