indexOf()函数总是返回零,即使有相同的字符串

Men*_*ong 0 javascript ajax jquery

我在javascript中有一个变量

var hidden = "class_code,other";
Run Code Online (Sandbox Code Playgroud)

然后我有一个返回值的ajax

$.ajax({
type: "post",
data: $("#myform").serialize,
success: function(data){
    if(hidden.indexOf(data)){
    //mycode here
 }
}
});
Run Code Online (Sandbox Code Playgroud)

但它不起作用,所以我尝试使用alert()打印它hidden.indexOf(data),它总是返回0,所以我尝试提醒数据,它正在返回"class_code".

为什么我的脚本不起作用,即使隐藏的var包含数据?

Bar*_*mar 6

indexOf返回匹配字符串开始的位置.从class_code一开始class_code,other,就是这样0.找不到字符串时,返回-1.测试是否找到字符串的正确方法是:

if (hidden.indexOf(data) != -1)
Run Code Online (Sandbox Code Playgroud)