2016-06-22 10 views
1

Ich möchte zusätzliche Leerzeichen am Anfang und am Ende der Zeilen entfernen, aber die Zeilenumbrüche behalten, das ist, was ich ausprobiert habe.Leerzeichen entfernen aber Zeilenumbrüche lassen JS oder jQuery in einem Textfeld

function removeSpaces(string) { 
 
return string.split(' ').join(''); 
 
}
<center> 
 
\t <form action="getid.php" method="post"> 
 
\t \t <textarea name="items" id="itemNames" cols="100" rows="10" onblur="this.value=removeSpaces(this.value);"></textarea><br /> 
 
\t \t <input type="submit" value="Get dem IDs"> 
 
\t \t <input type="button" id="remove" value="Remove extra spaces"> 
 
\t </form> 
 
</center>

Aber stattdessen ist es die ganze Räume zu entfernen, und die '\ n'

+0

nicht sicher, warum Sie Java markiert. Wird Entfernen. –

+0

Ich habe das Java-Tag entfernt, da diese Frage nichts mit Java zu tun hat. –

+0

Bedeutet, Javascript zu markieren, sorry. – user1114748

Antwort

0

Ihr Code würde auf jeden Fall alle Leerzeichen entfernen.

string.split(' ') 

teilt Ihre gesamte Zeichenfolge durch Leerzeichen auf, die Leerzeichen vor, nach und innerhalb der Zeichenfolge selbst enthält.

Mein Ansatz ist wie folgt:

function removeSpaces(string) { 
    // Remove leading spaces 
    while(string.indexOf(' ') === 0) { 
     string = string.substr(1); 
    } 
    // Remove trailing spaces 
    while(string[string.length-1] === ' ') { 
     string = string.substr(0, string.length-1); 
    } 
    return string; 
} 

hoffe, das hilft! :)

+0

Versuchte es, entfernt die Leerzeichen, die Sie eingeben, aber nicht aus dem Text, wenn Sie kopieren/einfügen. – user1114748

+0

Können Sie eine Beispieleingabe angeben, die Sie zum Testen verwendet haben? –

+0

https://jsfiddle.net/Lov705o7/ – user1114748

0
function removeSpaces(string) { 
     // Remove line breaks 
     var str = string.replace(/\n/g,"");  
     return str.split(' ').join(''); 
} 
+0

Danke für deine Hilfe, habe es ausprobiert und es hat nicht funktioniert. – user1114748

+0

\t
\t \t
\t \t \t \t \t

0

verwenden nur .trim()

function removeSpaces(string) { 
     return string.trim(); 
} 
+0

https://jsfiddle.net/2dus6L83/ Probieren Sie es mit http://pastebin.com/e5R1zXez nicht für mich arbeiten – user1114748

+0

ja, jsfiddle nicht gearbeitet .Aber Setzen Sie diese Funktion am Ende der HTML-Box in jsfiddle! Das wird funktionieren –

+0

Das habe ich gemacht ... – user1114748