javascript - 即使有相同的字符串,indexOf() 函数也始终返回零

标签 javascript jquery ajax

我在 javascript 中有一个变量

var hidden = "class_code,other";

然后我有返回值的ajax

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

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

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

最佳答案

indexOf 返回匹配字符串开始的位置。由于 class_code 位于 class_code,other 的开头,因此为 0。当未找到该字符串时,返回-1。测试是否找到字符串的正确方法是:

if (hidden.indexOf(data) != -1)

关于javascript - 即使有相同的字符串,indexOf() 函数也始终返回零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32194545/

相关文章:

javascript - Joi 验证 : or() and xor() condition depending upon field value

jquery - jquery 对话框的 css 属性

javascript - JavaScript 可以检测到用户何时停止加载文档吗?

在原型(prototype)上定义的 Javascript 属性

javascript - $注入(inject)器:modulerr Injecting Custom Module Into Angular App

javascript - jQuery 将 .data 加载到子元素

jquery - jQuery 中的异步 foreach

jquery - 在 jquery 中更改字体不起作用

javascript - 通过 Ajax 加载内容后调整颜色框的大小

javascript - Ajax 动态选择表单未提交值