我正在使用 gae 构建一个应用程序,并使用 channel api。
String message ="<data><title>newMessage</title><message>Hello</message></data>";
channelService.sendMessage(new ChannelMessage(user,message));
这个字符串是从 java servlet 发送过来的,在前端我想用 jquery 解析它。这就是我所做的,但它不起作用。
function onSocketMessage(message) {
var xml = $.parseXML(message.data),
$xml = $( xml ),
$title = $xml.find('title');
if($title == "newMessage"){
alert($xml.find('message'));
}
}
这是实际工作正常的 javascript 代码。
var messageXML = ((new DOMParser()).parseFromString(message.data, "text/xml"));
var title = messageXML.documentElement.getElementsByTagName("title")[0].firstChild.nodeValue;
if(title == "newMessage"){
alert(messageXML.documentElement.getElementsByTagName("message")[0].firstChild.nodeValue);
}
最佳答案
function onSocketMessage(message) {
var xml = $.parseXML(message.data),
$xml = $( xml ),
$title = $xml.find('title');
if($title.text() == "newMessage"){
alert($xml.find('message'));
}
}
你应该给出 .text()
,我猜你错过了这一行 if($title.text() == "newMessage")
。
关于javascript - GAE channel api解析onmessage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13869601/