【发布时间】:2019-06-12 21:12:40
【问题描述】:
我想测试某个元素是否在 switch 语句中包含一些字符串。我的代码类似于以下:
jQuery("#selector").on( "ajaxSuccess", function() {
var myVar = jQuery(this).is(':contains("some string")');
switch (myVar){
case ':contains("some string")': jQuery([do something here]);
break;
}
});
但它不起作用。我做错了什么?
【问题讨论】:
-
您能否描述一下您的需求 - 您可能不想要 switch 语句,但除非您创建 minimal reproducible example,否则我们不会知道
-
您只能将常量与
case一起使用 - 所以它正在寻找提供的字符串文字 -
switch 语句被优化为只做相等比较;你必须使用 if/else 来做你想做的事
-
除了明显的语法问题之外,您为什么需要这样做?您的
.is(':contains("some string")')已经强制执行条件,因此switch是多余的。 -
@mplungjan 你说得对,我本来打算提供更多背景信息,但杰里米还是想通了。
标签: javascript jquery if-statement switch-statement