2012-02-28 21 views
1

どのように私はこのテキストエリアからすべての値を取得することができます各行からjavascript配列に? は、これは必要があります。TEXTAREAから値を取得

  • は空白を無視する -
  • をトリミング

白ブレークを無視する次の私はメイクをしたいと思います:

$.each(textareavalues, function(index, value) { 
    console.log('@' + value + '@'); 
}); 

は、これは私を見る必要があります。

@[email protected] 
@[email protected] 
@one [email protected] 
@[email protected] 
@break [email protected] 
@[email protected] 

LIVE例:あなたは、文字列をトリミングするとどのようにStackOverflowの上の他の質問からJavaScriptで配列内の空のアイテムを除外する方法を見つけることができます

var textareavalues = $('textarea').val().split('\n'); 

を:http://jsfiddle.net/BW8Z2/1/

+0

あなたの質問は宿題のように読み取ります。 –

+0

いいえ、私は宿題の年齢があまりにも高いです:P –

+0

私の主張はそれが課題だということでした。それはあなたのためのコードを書くようにコミュニティに指示するようなものです。それはスタックオーバーフローを使用する適切な方法ではありません。 –

答えて

2
$("#getvalues").click(function(){ 
    var $textareavalues = $("#text").val(); 
    var x = $textareavalues.split('\n'); 
    $.each(x, function(index, value) { 
     var text = $.trim(value); 
     if(text !== "") 
      console.log('@' + text + '@'); 
    }); 
}); 
+2

'x [index]'と言って、 'value'と言ってはいけません(' $ .each() 'の第2引数がそうです)。 – nnnnnn

+0

提供されたargsを使用せず、オブジェクトに直接アクセスする可能性のある問題はありますか? – shaunsantacruz

+0

私は問題はないと考えています(理論的にはそれほどうまく実行されませんが、あなたが話すことはできません)。しかし、なぜあなたはそれらの引数を使用しない場合は、従来の 'for'ステートメントではなく' $ .each() 'を使って気にしますか? – nnnnnn

2

これは、あなたが始めるだろう。

4

「白い空白を無視する」とは、「行の先頭と末尾の空白は無視しますが、空白は残しておく」ことを意味します。そして、「白いブレークを無視する」とは、「白い線だけを無視する」という意味ですか?このような

何か:

$("#getvalues").click(function(){ 
    var lines = $("#text").val() 
          .replace(/\n\s*\n/g,"\n") 
          .replace(/^\s+|\s+$/gm,"") 
          .split(/\n/); 

    $.each(lines, function(i, val) { 
     console.log("@" + val + "@"); 
    }); 
})