为每个指定字符添加换行符的最佳方法是什么?(asp.net)

cho*_*and 6 css asp.net jquery gridview line-breaks

我在asp.net网站上的某个特定字符上发生换行时遇到问题.我有一个带有'Entitlements'列/字段的用户帐户的gridview,其中使用管道输入数据,如下所示:

"管理|操盘手|支持|销售"

我知道这不是最好的数据架构,但在我们在数据库中添加权利表之前,它必须暂时保持这种状态.

现在,我想在实际的gridview中显示的是:

Admin
Trader
支持
销售

换句话说,我想用换行符替换每个管道,或者至少在每个管道上添加换行符,以便每个权利都在一个单独的行上.

有没有办法在我的CSS类中执行此操作?我查看了不同的属性,如空格,文本溢出和自动换行,但到目前为止,我还没有找到任何可以说"在任何出现字符时包装文本"的内容.我想我可以使用jQuery来做到这一点,但似乎应该有一个更简单的解决方案.

如果jQuery 要走的路,那么我将欣赏一个例子,因为我是jQuery的新手.

谢谢你的帮助!

Lou*_*cci 1

您可以通过多种方式做到这一点。

在数据库中:

SELECT REPLACE(entitlements, '|', '<br/>')
Run Code Online (Sandbox Code Playgroud)

在 jQuery 中:

$('.entitlements').each(function(){
    var $obj = $(this);
    var txt = $obj.text();
    $obj.html(txt.replace(/|/g, '<br/>'))
});
Run Code Online (Sandbox Code Playgroud)

在 ASP.NET 中:

<%# FormatEntitlements(Eval("Entitlements"))%>

public static string FormatEntitlements(string entitlements)
{
    return (entitlements ?? "").Replace("|", "<br/>");
}
Run Code Online (Sandbox Code Playgroud)