J’ai une zone de texte où chaque ligne contient une valeur entière comme suit
1234 4321 123445
Je veux vérifier si l’utilisateur a vraiment défini des valeurs valides et non des valeurs amusantes comme suit
1234, 987l;
Pour cela, j’ai besoin de lire ligne par ligne de zone de texte et de le valider. Comment puis-je lire ligne par ligne une zone de texte à l’aide de javascript?
Essaye ça.
var lines = $('textarea').val().split('\n'); for(var i = 0;i < lines.length;i++){ //code here using lines[i] which will give you each line }
Cela fonctionne sans avoir besoin de jQuery:
var textArea = document.getElementById("my-text-area"); var arrayOfLines = textArea.value.split("\n"); // arrayOfLines is array where every element is ssortingng of one line
Cela vous donnerait toutes les valeurs numériques valides dans les lines
. Vous pouvez modifier la boucle pour valider, supprimer les caractères non valides, etc., comme vous le souhaitez.
var lines = []; $('#my_textarea_selector').val().split("\n").each(function () { if (parseInt($(this) != 'NaN') lines[] = parseInt($(this)); }
Une simple expression rationnelle devrait être efficace pour vérifier votre texte:
/\s*\d+\s*\n/g.test(text) ? "OK" : "KO"
var textArea = document.getElementById('myTextAreaId'); var lines = textArea.value.split('\n'); // lines is an array of ssortingngs // Loop through all lines for (var j = 0; j < lines.length; j++) { console.log('Line ' + j + ' is ' + lines[j]) }
var lines = $('#myTextAreaId').val().split('\n'); // lines is an array of ssortingngs // Loop through all lines for (var j = 0; j < lines.length; j++) { console.log('Line ' + j + ' is ' + lines[j]) }
Note latérale, si vous préférez pourChaque exemple de boucle est
lines.forEach(function(line) { console.log('Line is ' + line) })