【问题标题】:Javascript: Convert textarea into an arrayJavascript:将文本区域转换为数组
【发布时间】:2010-02-19 21:13:44
【问题描述】:

如何根据行尾分隔将 textarea 值分解为数组?使用 jQuery 对我来说很酷……

【问题讨论】:

    标签: javascript arrays end-of-line


    【解决方案1】:

    这应该可以工作(在 Firefox 和 Google Chrome 中测试):

    var arrayOfLines = $('#textAreaID').val().split('\n');
    

    【讨论】:

    • 应该是$('#textArea').val().split('\n'),jQuery对象没有value属性。
    • @CMS - 甚至 $('#textArea')[0].value.split('\n') :)
    • @CMS:糟糕。感谢您的关注。
    【解决方案2】:

    跨平台方式:

    var area = document.getElementById("area");             
    var lines = area.value.replace(/\r\n/g,"\n").split("\n");
    

    【讨论】:

      【解决方案3】:
      var stringArray = document.getElementById('textarea').value.split('\n');
      

      【讨论】:

        【解决方案4】:

        我最喜欢“跨平台方式”的答案 (https://stackoverflow.com/a/32240738/34806),因为我过去一直在努力处理来自 Mac 的输入。尽管如此,我认为大多数现有答案可以从额外的步骤中受益。

        具体来说,如果有些行是空的怎么办?下面将过滤掉这样的行,以便我们最终得到一个“紧凑”数组而不是“稀疏”数组(或至少,而不是一个元素不包含值的数组)

        var area = document.getElementById("area");             
        var lines = area.value.replace(/\r\n/g,"\n").split("\n").filter(line => line);
        

        【讨论】:

        • 澄清一下,这是使用空字符串在 JavaScript 中为 false-y 的事实吗?
        • @IMP1 正是
        【解决方案5】:

        你可以试试这个功能:

        function textToArray(){
          var someArray = [];    
          var nameList = $("#txtArea").val();
        
          $.each(nameList.split(/\n/), function (i, name) {     
        
              // empty string check
              if(name != ""){
        
                  someArray.push(name);
        
              }        
        });
        

        取自:CONVERT TEXTAREA CONTENT TO AN ARRAY USING JQUERY

        【讨论】:

          【解决方案6】:

          这个方法效果很好:

          var textArea = document.getElementById("textAreaId");
          var arrayFromTextArea = textArea.value.split(String.fromCharCode(10));
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-02-06
            • 1970-01-01
            • 2012-09-20
            相关资源
            最近更新 更多