it-swarm.com.de

Zeilenumbrüche im Textfeldelement

Dies ist reines HTML. (kein PHP oder ähnliches, wenn Sie den Hintergrund wissen wollen, ist dies eine C # -Anwendung mit HTML in einer Webansicht).

Alle meine HTML-Dateien sind schön formatiert und für Wartungsfreundlichkeit und dergleichen korrekt eingerückt.

Hier ist ein Auszug:

<tr>
    <td class="label">Clinic Times:</td>
    <td><textarea name="familyPlanningClinicSessionsClinicTimes">Monday:
    Tuesday:
    Wednesday:
    Thursday:
    Friday:
    Saturday:
    Sunday:</textarea></td>
</tr>

Die Zeilenumbrüche im <textarea></textarea>-Element dienen dazu, die Zeilenumbrüche auf der Seite abzurufen. Es enthält jedoch auch die Einrückung im Textfeldelement.

z.B.

example

Die einzige Möglichkeit, dieses Problem zu entfernen, besteht darin, die Einrückung zu entfernen. Es ist nicht das Ende der Welt, aber gibt es eine andere Möglichkeit, die Formatierung von Nizza beizubehalten? Vielen Dank.

24
Thomas Clayson

Sie könnten den &#10; verwenden (dies bedeutet eine neue Zeile in HTML), aber vielleicht ist das keine schöne Formatierung, wie Sie gesagt haben ...

Die einzige Möglichkeit, dieses Problem zu entfernen, besteht darin, die Einrückung zu entfernen. Es ist nicht das Ende der Welt, aber gibt es eine andere Möglichkeit, die Formatierung von Nizza beizubehalten?

<tr>
  <td class="label">Clinic Times:</td>
  <td><textarea name="familyPlanningClinicSessionsClinicTimes">Monday:&#10;Tuesday:&#10;Wednesday:&#10;Thursday:&#10;Friday:&#10;Saturday:&#10;Sunday:</textarea></td>
</tr>
62
Marcx

Es gibt keine reine HTML-Lösung für Ihr Problem. In Textbereichen werden in ihrem Inhalt immer Leerzeichen angezeigt.

In einer perfekten Welt können Sie die CSS-Eigenschaft white-space; Leider wird es auch nicht auf Textbereiche angewendet.

7
derekerdmann

Sie können <div> mit dem Attribut contenteditable verwenden:

<div contenteditable="true" style="width: 450px; height: 300px; white-space: pre-line;" name="familyPlanningClinicSessionsClinicTimes">Monday:
                            Tuesday:
                            Wednesday:
                            Thursday:
                            Friday:
                            Saturday:
                            Sunday:</div>

In Ihrem Fall glaube ich jedoch, dass die Ideenlösung nur aus mehreren gewöhnlichen Textfeldern besteht, eines für jeden Tag:

Monday: <input type="text" name="familyPlanningClinicSessionsClinicTimesMonday" /><br />
Tuesday: <input type="text" name="familyPlanningClinicSessionsClinicTimesTuesday" /><br />
...
0
Shadow Wizard

Wenn Sie in C # eine neue Zeile an einen Textbereich senden möchten, können Sie Environment.NewLine verwenden

0
VinnyG

Wenn Sie nur eine Liste von Elementen wünschen, können Sie <ul> <li>"Monday"</li> <li>"Tuesday"</li>...</ul> verwenden. 
Mit <ul><li></li></ul> wird eine vorformatierte Liste gestartet, wobei <ul> die Liste startet und <li> jedes Element in der Liste startet. Diese Methode erfordert kein Java oder CSS und wird automatisch eingerückt.

0

Nee; Ein Textfeld wird zurückgespuckt, was immer es tatsächlich hat.

Sie könnten den Wert von JavaScript einspeisen, aber das scheint viel Arbeit für eine isolierte Sache zu sein.

0
Dave Newton