防止 HTML 删除连续空格

Prevent HTML Removing Successive spaces

我在 JSP 页面中遇到问题,我必须根据字符串在屏幕上显示生成的消息。一切正常,直到其中一个帐号包含两个 spaces.

所以,我有这个 HTML:

    <logic:notEqual name="migrationsMessage" value="">
        <div style="color:Red;font-weight:bold">
            <bean:write name="solasDetailsForm" property="migrationsMessage"/>
        </div>
    </logic:notEqual>

当字段 migrationsMessage 包含此内容时:

<input type="hidden" name="migrationsMessage" value="A  123456W has migrated to A 123456.">

屏幕上的输出是这样的:

“A 123456W has migrated to A 123456.”

删除第一个 A 后的第二个 space。我试图将样式更改为这样,但没有帮助:

    <logic:notEqual name="migrationsMessage" value="">
        <div style="color:Red;font-weight:bold;white-space:pre">
            <bean:write name="solasDetailsForm" property="migrationsMessage"/>
        </div>
    </logic:notEqual>

知道出了什么问题吗?

如果在前端copied/pasted,则将空格替换为&nbsp;,它们被视为与空格相同。

function encodeWhiteSpaces(str) {
   return str.split('').map(function(c) { return c === ' ' ? '&nbsp;' : c }).join('');
}

字符串转换为数组(split),然后创建一个新数组(map),所有空格转换为&nbsp;,最后加入数组返回一个字符串 (join).

white-space: break-spaces 帮我解决了。更多关于 white-spaces here。他们有这么棒的 table: