有疑问:我在我的数据库中有一些文字(我通过表格提交)。
然后我有extJS Panel我的数据。我做了,当我点击soem字段时,只显示纯文本的消息Box(但在我的数据库中,这个文字非常漂亮,带有ul的,带有/ br /的s和儿子):(没关系,但是我的眼睛可以'通常读这个!如何避免这种情况?也许在extJS中存在一些替换params?replace('/ n /','// br /')..或?
我的网格
var Grid = new Ext.grid.GridPanel({
id : 'grid',
store : store,
frame : true,
autoScroll :true,
columns : my_columns,
stripeRows : true,
title :'Answers',
iconCls : 'arrow',
listeners: {
celldblclick: function(Grid, rowIndex, cellIndex, e){
var rec = Grid.getStore().getAt(rowIndex);
var columnName = Grid.getColumnModel().getDataIndex(cellIndex);
Ext.Msg.show({
title : 'Message',
msg : rec.get(columnName),
modal : true,
autoWidth : true,
maxHeight : 500,
autoScroll : true,
closable : true,
resizable : false,
draggable : false,
maxWidth : 500,
buttons : Ext.Msg.OK
});
Ext.Msg.getDialog().dd.lock();
}
}
});
答案 0 :(得分:0)
很难理解你的问题 - 你谈论一个面板,然后你用网格发布一个例子。
无论如何......问题可能是默认情况下消息对话框窗口有preventBodyReset: false
,这意味着重置了<ul>
和许多其他元素的默认浏览器样式。
不幸的是,没有简单的方法为消息框窗口设置preventBodyReset: true
。如果你想要它用于所有消息框,那么也许你可以用这样的代码实现:
Ext.MessageBox.getDialog().getEl().addClass('x-panel-reset');
如果您不想全局应用它,那么您可能需要创建自己的消息窗口。
答案 1 :(得分:-1)
尝试使用 escape功能。 如下所示:
Ext.Msg.show({
title : 'Message',
msg : escape(rec.get(columnName)),
modal : true,
autoWidth : true,
maxHeight : 500,
autoScroll : true,
closable : true,
resizable : false,
draggable : false,
maxWidth : 500,
buttons : Ext.Msg.OK
});