禁用 HTML 文本区域中的换行符

Posted

技术标签:

【中文标题】禁用 HTML 文本区域中的换行符【英文标题】:Disable linebreaks in HTML textarea 【发布时间】:2011-06-06 19:25:58 【问题描述】:

使用 CSS 或任何其他方式,是否可以在 html 文本区域中禁止换行?所以基本上我不希望用户按下“输入”时发生任何事情。

【问题讨论】:

可以使用 javascript,但可以绕过。提交后我会在服务器端剥离它们。 您希望内容在视觉上仍然包裹吗?还是<input type="text".../> 就足够了? 【参考方案1】:

使用 jQuery,你可以这样做:

$(document).ready(function() 
  $("#t_area").keypress(function(event) 
    if(event.which == '13') 
      return false;
    
  );
);

<textarea id="t_area"></textarea>

我还会使用 php 或 ASP 或您可以访问的任何服务器端脚本语言删除任何换行符,以彻底彻底。

【讨论】:

如果用户复制粘贴或拖放带有换行符的文本到文本区域会发生什么? ***.com/questions/4429757/… @Clark 如果您将文本复制并粘贴或拖放到 Stack Overflow 上的评论框中,也会发生同样的事情。 :) 无论如何它都不是万能的,这就是为什么我强烈建议使用服务器端脚本语言去除换行符作为故障保险。 这对用户来说也是相当令人沮丧的。显然这取决于情况,但我会用 php 或 javascript - onblur 或通过 ajax 发送,或任何时候将其删除:txtval = txtval.replace(/\n|\r/ig, ''); 嗯,禁用\n 与剥离\n 不同。对于我的情况,我需要保留 \n,我只是不想包装它。但我同意,可以进行问题描述。就我而言,我需要做一些关于溢出或包装的事情。 如果你过去了一些多行的文本,那么它也不会起作用。【参考方案2】:

可以使用 wrap="soft,hard, 或 off

【讨论】:

不会阻止换行。

以上是关于禁用 HTML 文本区域中的换行符的主要内容,如果未能解决你的问题,请参考以下文章

文本区域中的换行符

Firestore 不保存文本区域中的换行符

带有换行符的文本区域中的数据到数据库

使用 php 读取文件时删除文本区域中的换行符

WordPress - 如何在不丢失换行符的情况下清理文本区域中的多行文本?

在 html 文本区域中显示文件内容时出现换行问题 - javascript PHP