我正在尝试为我的网站创建新闻Feed。现在,新闻栏的类型为longtext
。我varchar
但是它也不起作用。有几行格式化文本。我的意思是他们有"回车"。我从后面的代码中获取数据库中的数据并将它们设置为会话。在设计页面中,我试过这个:
<div>sessioncode.toString()</div>
<div>sessioncode</div>
<div class="panel-body">
<%:Session["HaberIcerik"]%>
</div>
两者都忽略了\r
(回车)。 <a>
标记看起来像普通的<a>
字符串。在代码背后我做了这个:
sessionvalue = sqldatas.rows[0]["newscontent"];
sessionvalue = sqldatas.rows[0]["newscontent"].toString();
Session["HaberIcerik"] = haber.Rows[0]["haberIcerik"];
你有什么建议?
答案 0 :(得分:0)
Web浏览器会根据HTML规范中的要求将新行转换并压缩为空格,这需要data : it_tabdescr type abap_compdescr_tab,
wa_tabdescr type abap_compdescr.
data : ref_table_descr type ref to cl_abap_structdescr.
ref_table_descr ?= cl_abap_typedescr=>describe_by_name( p_table ).
it_tabdescr[] = ref_table_descr->components[].
loop at it_tabdescr into wa_tabdescr.
clear wa_fieldcat.
wa_fieldcat-fieldname = wa_tabdescr-name .
wa_fieldcat-datatype = wa_tabdescr-type_kind.
wa_fieldcat-inttype = wa_tabdescr-type_kind.
wa_fieldcat-intlen = wa_tabdescr-length.
wa_fieldcat-decimals = wa_tabdescr-decimals.
append wa_fieldcat to it_fieldcat.
endloop.
来表示换行符。
在渲染之前预处理字符串:
<br />
或按原样呈现,但在具有sessionvalue = Regex.Replace(input_string, @"\r\n?|\n", "<br />");
CSS样式的元素中。