【问题标题】:Javascript: Compare each line of a textarea with all lines of another textareaJavascript:将文本区域的每一行与另一个文本区域的所有行进行比较
【发布时间】:2012-02-09 16:18:44
【问题描述】:

我需要将 textarea "a" 的每一行与 textarea "b" 的所有行进行比较,并使用 "b" 中不存在的 "a" 的所有项目创建一个 alert()

¿ 我该怎么做?

【问题讨论】:

    标签: javascript html textarea


    【解决方案1】:

    一种方法是获取 2 个文本区域的值并将它们拆分为换行符 (\n) 字符。然后,您可以遍历第一个 textarea 的行并检查它们是否出现在第二个 textarea 中:

    var t1 = document.getElementById("textarea1").value.split("\n"),
        t2 = document.getElementById("textarea2").value.split("\n"),
        notIn2 = [];
    for(var i = 0; i < t1.length; i++) {
        if(t2.indexOf(t1[i]) === -1) {
            notIn2.push(t1[i]);  
        } 
    }
    

    可能有更好的方法,我敢肯定上述方法远非完美。这只是首先想到的。这是working example

    【讨论】:

    • 我正要发布同样的内容! +1 更快;)但是,为了安全起见,我会使用.split(/\r\n|\r|\n/);
    • 我不知道发生了什么,在做 var t1 = document.getElementById("textarea1").value.split("\n"); 之后 var t1 为空。
    • 它只会在明确的换行符处拆分(例如,您按下 Enter 的位置)。如果 textarea 中有 id "textarea1" 的新行,t1 将包含一个数组。
    • 史诗般的失败。我忘记将我的盒子添加到 CGI 参数中,我修复了它,它现在可以工作了。对不起,谢谢大家!!!!!!!!!
    猜你喜欢
    • 1970-01-01
    • 2011-03-22
    • 1970-01-01
    • 1970-01-01
    • 2012-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多