gpt4 book ai didi

javascript - 检查所选值是否为 'YES' 如果是,则使用 Javascript 启用控件

转载 作者:行者123 更新时间:2023-12-03 02:56:40 24 4
gpt4 key购买 nike

这里快要疯了。在 ASP.NET 应用程序上工作,需要添加一些自定义验证,刚开始编写它并想测试它。

我有一个父控件 drp1 和 2 个子控件 txt1 和 txt2。页面加载时,两个 txt 控件均被禁用。

当用户从 drp1 中选择"is"时,我调用以下函数来尝试启用 txt1,但它不起作用,我不知道为什么:/

function EnableDisableSometing() {

try {
if (document.getElementById("<%=drp1.ClientID%>").value = "Yes") {
alert("HERE");
(document.getElementById("<%=txt1.ClientID%>").disabled = false);

}
}
catch (e) {
alert("EnableDisableMentalHealthError :" + e.message);
}
}

这里发生的情况是 txt1 被启用,但是,下拉列表中选定的文本值只是消失了。第二次我选择"is",它启用了 txt1 并且下拉列表中的文本为空。我可以选择另一个值“NO”,例如发生同样的事情。

我想做的就是检查 drp1.text = 'Yes' 是否存在,然后启用一堆控件,其实没什么特别的。

最佳答案

您正在使用=在你的 if 语句中,它不是 bool 运算符。它将下拉列表的值设置为 'Yes' ,而不是检查它是否等于 'Yes'

为了执行该检查,您必须使用 ===== ,它们有一个关键的区别(在 JavaScript 中),您几乎可以在任何地方读到。

使用===== ,如果您的alert语句不再执行,则意味着检查失败;即document.getElementById("<%=drp1.ClientID%>").value不等于'Yes' .

var x = 1;
if (x = 10) // clearly not true, x is 1.
console.log('Somehow this executes anyway');

if (x == 10)
console.log('This is also going to execute, because we set x to 10 in the above if statement')

if (x == 20)
console.log('This will not execute')

关于javascript - 检查所选值是否为 'YES' 如果是,则使用 Javascript 启用控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47595397/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com