dwr.xml 部分
Action 部分
WebContext wctx = WebContextFactory.get();
String currentPage = wctx.getCurrentPage();
Collection<ScriptSession> sessions = wctx.getScriptSessionsByPage(currentPage);
ScriptProxy s = new ScriptProxy(sessions);
s.addFunctionCall("receiveMessages", msg, role);
msg和role 就是两个实体类对象了 ,作为参数传到页面上的receiveMessages方法 。
问题1:比如 Message有个属性是个实体类 Question , 怎么设置都没法set ,
msg.setQuestion(Question 的实体类对象);
说Question 未反转之类的错误,我在dwr.xml加了 Question 也还是报错,希望可以解释一下 。
页面部分
function receiveMessages(msg,role) {
var chatlog = Ext.getCmp('chatlog');
var tpl = new Ext.XTemplate(
'',
'',
'
{legionName}{sender}: {content:this.parseContent}
','',
'',
{
compiled : true,
parseContent : function(content) {
return Ext.util.Format.nl2br(Ext.util.Format.htmlEncode(content));
},
parseLegionName : function() {
return legionName='${Session ["role"].legionName?default('数据异常')}';
}
}
);
tpl.append(chatlog.body, msg);
tpl.append(chatlog.body, role);
}
Message的属性 sender , Role的属性legionName 。
问题2 :
'', 这个不起作用 ,
输出内容只输出 {sender} , {legionName}出不来 。
如果把输出内容不做判断 减少为
'
{legionName}{sender}: {content:this.parseContent}
',输出的结果变成了:
(sender 的值) : 加内容 //一行
(legionName的值) : 不加内容 //;另外一行
明明是在同一个
标签里面,怎么换成两行输出,跟什么有关我不清楚 。
问题3:
输出内容的 A标签的 onclick方法 不能带字符串参数,数字可以,是我未进行转义吗 ?
onclick="showReceiver('{sender}'); 不行