Sis*_*sir 1 javascript xml jquery namespaces
我是ajax的新手.我已经通过jquery完成了正常的xml解析,但无法使用命名空间工作的xml.我在网上搜索过,我找到的资源非常少.这是stackoverflow中的一篇文章,但它对我不起作用.
这是xml文件的一部分.假设我需要xml数据中的年份编号.我怎么会得到它?
<aws:sunset>
<aws:year number="2011" />
<aws:month number="3" text="March" abbrv="Mar" />
<aws:day number="27" text="Sunday" abbrv="Sun" />
<aws:hour number="7" hour-24="19" />
<aws:minute number="10" />
<aws:second number="28" />
<aws:am-pm abbrv="PM" />
<aws:time-zone offset="-5" text="Central Daylight Time (USA)" abbrv="CDT" />
</aws:sunset>
Run Code Online (Sandbox Code Playgroud)
等待你的回复.谢谢!
我建议尽可能使用真正的名称空间感知XML解析器,尤其是在处理外部服务时.例如,无法保证名称空间前缀随时间保持不变.
大多数JavaScript DOM解析器都将包含getElementsByTagNameNS(),它将允许您查找具有实际命名空间的元素.
假设您的数据存在,该过程可能看起来像这样xml_file.
var namespace = 'http://aws.example.com/';
var parser = new DOMParser(); // Webkit, IE has its own
var xml = parser.parseFromString(xml_file, "text/xml");
var year = xml.getElementsByTagNameNS(namespace, 'year')[0]; // returns the first aws:year element
var year_value = year.getAttribute('number');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3785 次 |
| 最近记录: |