簡體   English   中英

在textarea中換行而不顯示HTML標簽

[英]line break in textarea without displaying HTML tags

我正在使用此HTML / PHP代碼

<textarea name="ticket_update" id="ticket_update" cols="70" rows="2"><?php echo 'Ticket '.$ticket["ticketnumber"].'\n'.$result["notes"]; ?></textarea>

我嘗試使用\\n \\n\\r<br />但是它在textarea中顯示HTML標記。

我如何阻止他們顯示?

使用"\\n"而不是'\\n'來顯示換行符;

要從內容中刪除HTML標記,請使用strip_tags()函數;

一個完整的示例如下所示:

<textarea name="ticket_update" id="ticket_update" cols="70" rows="2">
      <?php echo strip_tags('Ticket '.$ticket["ticketnumber"]."\n".$result["notes"]); ?> 
</textarea>

同樣,看起來您的代碼中可能出現了一些PHP聲明或警告; 如果您的$ticket數組沒有ticketnumber鍵,則會收到錯誤消息,其中包括一些HTML標記; 您應該檢查與array_key_exists使用的每個鍵是否存在,或者使用@靜默錯誤,如下所示:

echo @strip_tags('Ticket '.$ticket["ticketnumber"]."\\n".$result["notes"]);

一個textarea不能有任何子元素。 如果您不希望錯誤恢復嘗試呈現標簽,則不要在元素中放置標簽。

您可以嘗試以下方法:

<textarea name="ticket_update" id="ticket_update" cols="70" rows="2"><?php echo 'Ticket: '.$ticket["ticketnumber"].'&#10;'.$result["notes"]; ?> </textarea>

&#13;&#10; = line break

&#10; =換行和&#13; =回車

此處演示

嘗試html_entity_decode()

<?php
$ticket = '50';
$nodes = 'sample'    
?>

<textarea name="ticket_update" id="ticket_update" cols="70" rows="2"><?php echo 'Ticket '.$ticket.html_entity_decode("\n").$nodes; ?></textarea>

演示輸出

使用&#10; 作為換行符。

像這樣 :

<textarea name="ticket_update" id="ticket_update" cols="70" rows="2"><?php echo 'Ticket '.$ticket["ticketnumber"].'&#10;'.$result["notes"]; ?></textarea>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM