Jquery获取XML属性值,用转义不工作
jquery get xml attribute value, escaping with not working
注意:我最近发布了另一个关于这个的问题,但它被标记为重复,因为我没有明确说明我已经尝试了什么。我会试着解释我这次做得更好的地方。
这是我试图解析的XML文件的一部分:
<entry>
<id>http://www.google.com/m8/feeds/contacts/7ff84d8009d9a0b</id>
<updated>2010-04-11T12:47:03.281Z</updated>
<category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/contact/2008#contact'/>
<title type='text'>Name</title>
<link rel='http://schemas.google.com/contacts/2008/rel#edit-photo' type='image/*' href='https://www.google.com/m8/feeds/photos/media/7ff84d8009d9a0b/1B2M2Y8AsgTpgAm7PhCfg'/>
<link rel='self' type='application/atom+xml' href='https://www.google.com/m8/feeds/contacts/full/7ff84d8009d9a0b'/>
<link rel='edit' type='application/atom+xml' href='https://www.google.com/m8/feeds/contacts/full/7ff84d8009d9a0b/127099002381000'/>
<gd:email rel='http://schemas.google.com/g/2005#other' address='email@email.com' primary='true'/>
</entry>
下面是我的JavaScript代码:
$("#importData").append("<ul>");
xmlDoc = $.parseXML(data);
$xml = $(xmlDoc);
$xml.find('entry').each(function () {
var name = $(this).find("title").text();
var email = $(this).find('[nodeName="gd:email"]').attr('address');
$("#importData").append("<li>" + name + " - " + email + "</li>");
});
//$(this).text() + " - " + $xml.find("gd:email[address]").index(i)
$("#importData").append("</ul>");
下面是一个尝试(不成功)解析XML的jsfiddle: http://jsfiddle.net/DVXB9/4/
下面是另一个成功解析XML的jsfiddle,它将gd:email
替换为gdemail
(没有冒号):http://jsfiddle.net/DVXB9/5/
我已经尝试了各种方法来解析我的XML与名称空间,包括[nodeName=gd:email]
, [nodeName="gd:email"]
和gd'':email
的所有建议由这个StackOverflow问题。
我不知道下一步该怎么做。其他与我的XML结构相似的人声称上述方法可以正常工作。然而,我得到的最好结果是输出值"未定义"。我做错了什么?
这里是更新的Fiddle
只是为了让你的例子工作,我不得不添加名称空间声明<entry xmlns:gd='http://www.some-url.org'>
,否则$.parseXML
抛出异常…之后,您可以使用$('gd'':email, email',$xml)
访问电子邮件节点。
相关文章:
- Javascript:selenium Web驱动程序isDisplayed()不工作
- jQuery UI自动完成突然停止工作
- AngularJS UI路由器不能像ng路由器那样工作
- HTML5音频加载和播放获胜'我不能在iPad上工作
- JavaScript打印功能使日历停止工作
- Javascript.getHours()工作不正常
- 为什么这在IE中的工作方式与在Firefox中不同
- 视频HTML没有'无法在Internet Explorer 11上工作
- 扩展移相器按钮类不工作
- Firebase迁移-简单的Firebase.set没有'不再工作了——旧的还是新的
- 在JavaScript中输出转义字符
- 转义符不能与innerHTML一起使用
- 匹配,除非存在“转义”字符;必须联机和背靠背工作
- 由于转义序列,Javascript Replace不能工作
- 转义字符的实现是否在JavaScript和PHP中类似地工作,或者两者的实现是否有任何差异
- Jquery获取XML属性值,用转义不工作
- 为什么这个正则表达式可以在有或没有转义的连字符/破折号的情况下工作?
- 按下键-转义不工作
- Cakephp的图像转义链接不工作
- 在Jquery中使用图像不工作-转义引号