JQuery für Trim führende Leerzeichen nur?
Ich bin Thematisierung einer JSP-Anwendung, die eine Tabelle Kopfzeile mit den dynamisch generierten Daten (ich glaube, es heißt Jasper Reports?) und ich habe nicht Zugriff auf alle Vorlage-Dateien für die Ausgabe. Ich habe Dinge zu sehen ziemlich gut, mit ein wenig JQuery-foo.
Aber ich habe immer noch ein Problem, es scheint Leerzeichen in einigen span-tags in den Header td > Spannweiten:
<td><span> My Heading</span></td>
Beachten Sie das Leerzeichen vor dem Wort "Meine".
Fand ich dieses raffinierte Stück code zu trim white space, aber das Problem ist, dass es nimmt alle Leerzeichen aus.
var pane = $('span');
pane.val($.trim(pane.val()).replace(/\s*[\r\n]+\s*/g, '\n')
.replace(/(<[^\/][^>]*>)\s*/g, '$1')
.replace(/\s*(<\/[^>]+>)/g, '$1'));
So, jetzt mit diesem code, es endet so:
<td><span>MyHeading</span></td>
Idealerweise würde ich gerne ändern, damit nur das erste bit von white space entfernt wird, aber keiner nach, dass.
just the first bit of white space
Meinst du nur den ersten Raum verlassen, andere intakt?- Heitere, ja, nur das erste Leerzeichen direkt nach
<span>
- Versuchen Sie, diese
pane.text(pane.text().replace(/^\s/, ''));
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden
.text()
um den string-Wert.http://jsfiddle.net/gaboesquivel/cHevR/
Edit:
der obige code wird nicht funktionieren, da es überschreibt den text, wenn es mehr als 1 span in das Dokument
Müssen Sie Durchlaufen das array umfasst
http://jsfiddle.net/gaboesquivel/cHevR/2/
$('span')
es sei denn, Sie finden einen Weg, um wählen Sie die bestimmte Gruppe, die Sie ändern möchten.$('#myModuleId span')
zum Beispiel @see JQuery-Selektoren$('td > span')
= Spannweite Kind von allen td-ElementenVersuchen Sie dies:
Sollte trim alle Leerzeichen am Beginn der Zeichenkette. Alternativ können Sie es löschen Sie nachgestellte Leerzeichen mit einen etwas anderen Ausdruck. Siehe hier:
http://www.toptip.ca/2010/02/javascript-trim-leading-or-trailing.html
Hier ist das Beispiel, damit Sie sehen können wie es funktioniert:
http://jsfiddle.net/CkMPH/
<td><span>...
?Nur für das erste Leerzeichen entfernt werden, müssen Sie das code
http://jsfiddle.net/P9jSL/