IF函数中的Javascript通配符
我有一个具有以下选项的字段IF函数中的Javascript通配符,javascript,Javascript,我有一个具有以下选项的字段 United Kingdom EEA France EEA India Non EEA China Non EEA 如何执行if语句来检查字段是否包含EEA或非EEA。我在我的示例代码中使用了==,我知道它甚至不接近,我只是想让它更清晰 据我所知,我不能使用子字符串,因为长度始终会因国家而异,基本通配符仍然会拉回欧洲经济区和非欧洲经济区的结果 function DisplayCorrectSections() { var SectionSelection =
United Kingdom EEA
France EEA
India Non EEA
China Non EEA
如何执行if
语句来检查字段是否包含EEA
或非EEA
。我在我的示例代码中使用了==
,我知道它甚至不接近,我只是想让它更清晰
据我所知,我不能使用子字符串
,因为长度
始终会因国家而异,基本通配符仍然会拉回欧洲经济区
和非欧洲经济区
的结果
function DisplayCorrectSections() {
var SectionSelection = GetFieldValue("Nationality");
if (SectionSelection == "EEA" ) {
EnableRtwDocs();
DisableVisaInformation();
DisableValidVisaPanel();
}
if (SectionSelection == "Non EEA") {
DisableRtwDocs();
EnableVisaInformation();
EnableValidVisaPanel();
}
}
您可以使用,但必须先检查非EEA
,否则它也会在非EEA
字符串中找到EEA
:
if (SectionSelection.indexOf("Non EEA") > -1) {
//contains "Non EEA"
} else if (SectionSelection.indexOf("EEA") > -1) {
//contains "EEA"
} else {
//contains neither
}
您可以使用,但必须先检查非EEA
,否则它也会在非EEA
字符串中找到EEA
:
if (SectionSelection.indexOf("Non EEA") > -1) {
//contains "Non EEA"
} else if (SectionSelection.indexOf("EEA") > -1) {
//contains "EEA"
} else {
//contains neither
}
从@James开始,您也可以使用正则表达式来执行此操作,正则表达式还将进行测试以确保文本位于值的末尾
var matches = SectionSelection.match(/(non )?eea$/i);
if (matches != null) {
if (matches[1] != "") {
//contains "Non EEA"
} else {
//contains "EEA"
}
} else {
//contains neither
}
匹配的细分是这样的
检测字母(non)
是否存在non
直接匹配字母eea
匹配行的末尾$
eea
之前有非,则匹配[1]
将包含非
末尾的i
表示它不区分大小写,因此它将匹配eea
,eea
,eea
,等等。从@James开始,您也可以使用正则表达式来执行此操作,正则表达式还将测试以确保文本位于值的末尾
var matches = SectionSelection.match(/(non )?eea$/i);
if (matches != null) {
if (matches[1] != "") {
//contains "Non EEA"
} else {
//contains "EEA"
}
} else {
//contains neither
}
匹配的细分是这样的
(non)
检测字母non
是否存在
eea
直接匹配字母
$
匹配行的末尾
如果在eea
之前有非,则匹配[1]
将包含非
末尾的i
表示它不区分大小写,因此它将匹配eea
、eea
、eea
,等等。欢迎使用stackoverflow。请注意你写问题的文本框下的问题预览。它将显示您的问题是否格式正确(即其他人阅读/理解的容易程度)。欢迎使用stackoverflow。请注意你写问题的文本框下的问题预览。它会告诉你你的问题的格式是否正确(即其他人阅读/理解的容易程度)+1让我去检查世界上是否有国家包含“EEA”,这会破坏我的代码:)()呵呵。。。安全总比抱歉好@James:)尽管有一位比我聪明得多的人曾经说过:“如果你能证明什么是白痴,他们只会变成更好的白痴。”谢谢你们,先生们,非常感谢+让我去检查世界上是否有国家含有“EEA”,这会破坏我的密码:)()呵呵。。。安全总比抱歉好@James:)尽管有一位比我聪明得多的人曾经说过:“如果你能证明什么是白痴,他们只会变成更好的白痴。”谢谢你们,先生们,非常感谢!