javascript - 需要帮助在循环中将多个数组值设置为 null - javascript

标签 javascript select loops null for-loop

我一直致力于创建一个自定义脚本来帮助管理登录页面的 secret 问题表单。我试图使所有单独的选择列表都是动态的,因为如果用户选择其中一个问题,则它将不再是其余选择列表中的选项,依此类推。无论如何,我遇到的问题是当我尝试将其他列表中的变量设置为空时。我目前只处理 3 个列表,因此我查看一个列表,然后在其他 2 个列表中查找/删除匹配项。这是我删除任何匹配项的循环。

for(i=0; i<array1.length; i++) {
    if(array2[i].value == txtbox1.value) {
        document.questions.questions2.options[i] = null
    }
    if(array3[i].value == txtbox1.value) {
        document.questions.questions3.options[i] = null
    }
}

如果两个匹配项位于数组中的相同值/位置,则效果很好。但是,例如,如果一个匹配项位于 array1[1],另一个匹配项位于 array3[7],则仅删除第一个匹配项,而不删除第二个匹配项。我有什么遗漏的吗?任何帮助表示赞赏。谢谢!

最佳答案

考虑到每个数组中的位置可能会有所不同,我在这里没有看到太多选择。

在单独的循环中执行此操作,除非您在两个数组中重复值并共享相同的位置

EDTI 我想出了一个简单的解决方案,它可能有效,创建一个函数。一个接收数组作为参数的函数怎么样?

类似这样的事情:

function finder(var array[], var valueToFound, var question) {
     for (i=0; i<array.lenght; i++) {
          if (array[i].value == valueToFound) {
                switch (question) {
                      case 1: document.questions.questions1.options[i] = null;
                              break;
                }

                return;
          }
     }
}

我想我表达了我的观点,也许它可以带你走向正确的方向

关于javascript - 需要帮助在循环中将多个数组值设置为 null - javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5319108/

相关文章:

mysql - 获取最近更新的记录 Doctrine Mysql

javascript - 循环javascript的解释

java - 如何在Java中找到一个单词的N个词组?

javascript - 如何使用 Testacular + AngularJS 测试外部服务的应用程序

javascript - 单击按钮后如何将数据从数组插入到数组

javascript - 找出所有 9 人组成的组

MYSQL - 从列中选择一个值或(如果没有给出值)选择全部

php - 尝试从多个表中选择行时发生PHP错误

java - 对 For 循环中的数字求和

javascript - mongodb 模式中具有不同对象类型的数组