Javascript 拆分为第一条记录创建错误

标签 javascript

检查这个 Jfiddle http://jsfiddle.net/TyJy4/9/

这里有一个用户数组。如果用户名正确,您可以进入密码字段。代码工作正常,除了当我在第一个用户名中键入第一条记录(用户)时时间。

用户记录生效的条件

  1. 当我输入用户名和空格,然后按 Tab 键(这里会抛出错误,提示它在数据库中不存在。)然后退格键,然后按 Tab 键,转到密码字段。
  2. 当我键入 user2(或除第一个用户之外的任何其他用户)然后键入 user 时。

最佳答案

您需要放置代码以在返回 true 之前删除只读。看看进行该更改是否可以为您解决问题(对我来说似乎是):

for (var j=0; j<names.length; j++){
if(names[j].localeCompare(x)==0){
        z.removeAttribute("readonly", 0);
        return true;
    }
}

以上可以简化为:

if(names.indexOf(x) != -1){
    z.removeAttribute("readonly", 0);
    return true;
}

这使用内置的 indexdOf(),它可能是用 C++ 编写的,这应该会比您的 for 循环提高性能。

关于Javascript 拆分为第一条记录创建错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21276275/

相关文章:

javascript - 在 JavaScript 事件代码中对回调和参数使用匿名函数而不是命名函数有什么好处?

javascript - 来自适配器的 Torii 提供商名称?

Javascript - MeteorJS 根据我可以手动设置的变量在特定时间禁用按钮

javascript - 如何在 JavaScript 中定义对象变量结构?

javascript - AngularJS:数据绑定(bind)到数组元素不适用于批量更新

javascript - 我陷入了循环任务

javascript - 在 Flutter 的 html 文件中使用 js 文件

javascript - 拉斐尔和选择许多元素

javascript - 这些按钮不会改变文本颜色或图像大小。我认为我的 javascript 链接不正确?

javascript - 在另一个 NodeJS 进程中执行 JS 文件(带有日志等)