点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
我有一个奇怪的JS错误,也许有人已经遇到了它,并且可以为我提供有关此问题的线索。
我正在为SAP EP编写FLP插件,实际上想做的很简单:我从我自己开发的自定义Java组件中获取JSON,并希望在sap.m中呈现其中的某些部分。 登录到FLP后,将对话框res sap.ui.core.HTML作为消息显示。 我的JSON响应有效,如下所示:
{" messages":[{" beginDate":" CET Feb 01 08:00:00 CET 2018"," approved":true," messageType":" A"," endDate":" Thu Feb 28 15 :00:00 CET 2019"," active":" true"," id":" 2601"," text":" asd
<\/strong>asdsad
<\/h1>"," lang":" de"," title":" Test"," autor":" user"},{" beginDate":" CET Feb 22 08:00:00 CET 2018", " approved":true," messageType":" S"," endDate":"周五3月30日CEST 2018"," active":" true"," id":" 2605"," text" :"lorem ipsum。lorem ipsum。lorem ipsum。lorem ipsum。lorem ipsum。lorem ipsum。lorem ipsum。lorem ipsum。lorem ipsum。lorem ipsum。lorem ipsum。lorem ipsum。lorem ipsum。lorem ipsum。 lorem ipsum。lorem ipsum。lorem ipsum。lorem ipsum。lorem ipsum。lorem ipsum。lorem ipsum。<\/p>
lorem ipsum.lorem ipsum。lorem ipsum。<\/p>
lorem ipsum。< \/p>
lorem ipsum。lorem ipsum。lorem ipsum。lorem ipsum。lorem ipsum。lorem ipsum。lorem ipsum。lorem ipsum。lorem ipsum。<\/p>"," lang":" de"," title":"测试消息1"," autor":"用户"}]}
您已经注意到,它包含HTML标记,应该这样呈现。 我的FLP插件包含一个JS方法,该方法应该获取JSON并将其呈现在消息框中:
var getSysMessagePopup = function(){ var sUrl ="/irj/servlet/prt/prtrw/prtroot/xxx.MessagesComponent"; $ .ajax({ 网址:sUrl, 异步:错误, 超时:10000, 错误:function(){ $ .sap.log.error("无法加载系统消息..."); } .bind(this), 成功:功能(数据,状态,jqXHR){ var jsonMessages = []; if(typeof data!=='undefined'&& data.messages.length> 0){ var计数器= 0; var content =''; for(var i = 0; i'; } var oHtml = new sap.ui.core.HTML({ 内容:内容 }); var dialog = new sap.m.Dialog({ 标题:"消息", 类型:"消息", 状态:"错误", 内容:oHtml, beginButton:新的sap.m.Button({ 文字:"确定", 按下:function(){ dialog.close(); } }), afterClose:function(){ dialog.destroy(); } }); dialog.open(); } } .bind(this) });
AJAX调用运行良好,但控制台中出现JS错误:
SCRIPT5022:语法错误,无法识别的表达式: 测试 asd
asdsad
__________________________________________________________________________________________________________________
测试 消息1lorem ipsum。 lorem ipsum。 lorem ipsum。 lorem ipsum。 洛雷姆 ipsum。 lorem ipsum。 lorem ipsum。 lorem ipsum。 lorem ipsum。 lorem ipsum。 洛雷姆 ipsum。 lorem ipsum。 lorem ipsum。 lorem ipsum。 lorem ipsum。 lorem ipsum。 洛雷姆 ipsum。 lorem ipsum。 lorem ipsum。 lorem ipsum。 lorem ipsum。 洛雷姆 ipsum。
lorem ipsum.lorem ipsum。 lorem ipsum。
lorem ipsum。
lorem ipsum。 lorem ipsum。 lorem ipsum。 lorem ipsum。 lorem ipsum。 lorem ipsum。 lorem ipsum。 lorem ipsum。 洛雷姆 ipsum。
__________________________________________________________________________________________________
文件:core-min-0.js,行:75,列:9079
不幸的是,我没有线索,"语法错误,无法识别的表达"试图告诉我什么,所以我不知道如何解决。 我发现我是否通过评论放弃了标题
内容+ =标题;
输出,效果很好。
我无法在SCN上找到任何可比较的问题,正如您在JSON响应中看到的那样,fild"标题"不包含任何特殊内容,仅包含纯文本。 因此,最后我也不知道到底出了什么问题,也没有办法解决这个问题。 有人有主意吗? 谢谢
亲切的问候
(16.7 kB)
循环的第一次迭代是将标题设置为
测试
然后将其连接为其余的
"测试 asd
asdsa .....
是引起问题的原因。
此致
Jamie
谢谢,现在我明白了。 因此,实际原因是sap.ui.core.HTML的内容必须引人注目,并且必须被标记包围。 如果我细心阅读文档,我会知道的,因为它看上去很独特( https://sapui5.hana.ondemand.com/#/api/sap.ui.core.HTML/constructor ):
我通过将标题包含在" alibi"标签中来更正了它,现在它可以工作了,再次感谢,
亲切的问候
一周热门 更多>