解决jQuery在IE6下遍历XML的Bug!
参考博文《IE下利用jQuery分析XML》地址:http://www.newmediafun.com/2009/07/parsing-xml-with-jquery-in-internet-explorer/
本来以为jQuery会很好的解决所有浏览器兼容性问题,但是阵亡的IE6还是会找麻烦!
jQuery使用AJAX时,在IE6下读取回传到XML数据会有问题,具体看下面的例子吧。
准备数据文件test.xml
<ArrayOfManagement_Contact>
<Management_Contact>
<user_id>123457</user_id>
<tel_type>2</tel_type>
<tel>879</tel>
<visibility>0</visibility>
<del_flg>0</del_flg>
<id>537</id>
</Management_Contact>
<Management_Contact>
<user_id>123457</user_id>
<tel_type>2</tel_type>
<tel>54645</tel>
<visibility>0</visibility>
<del_flg>0</del_flg>
<id>538</id>
</Management_Contact>
</ArrayOfManagement_Contact>
正常情况下可以使用 $.get / $.post,但是IE有个安全性限制的问题,会使jQuery无法正确解释XML数据,至于什么安全性,没兴趣深究,就当bug处理!作者原文的解释如下:
What happens is that the XML gets loaded into IE as a text object, then gets converted into usable XML data. Any other browsers get the XML data directly.
Bug原因:IE请求XML文件时,后将它作为文本对象加载,之后需要我们手动转成XML类型的数据才可以使用,而其他浏览器会直接装载XML类型数据。
所以在下面的代码中,solution1是无法正确工作的,solution2提供了变通的转换方案,问题解决!
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>123123123</title>
<mce:script type="text/javascript" src="jquery-1.3.2.min.js" mce_src="jquery-1.3.2.min.js"></mce:script>
<mce:script type="text/javascript"><!--
function test() {
/*
// solution 1
$.post('test.xml', null, function (data) {
var mydata = data;
alert('my');
alert($(mydata).find("user_id").eq(1).t
相关文档:
代码如下:
DECLARE
@TempTable table(UserID int , UserName nvarchar(50));
insert into
@TempTable (UserID,UserName) values (1,'a')
insert into @TempTable
(UserID,UserName) values (2,'b')
select UserID,UserName
from @TempTable FOR XML PATH
运行这段脚本,将生成如下结果:
复制代码
......
是否厌倦了用xml文件来做Magento的页面布局,是的话来试试下面这种方式,把布局代码写到controller 里面
public function mycoolAction()
{
/* ... Some code ...*/
$update = $this->getLayout()->getUpdate();
/* ... Some code ...*/
$this->addActionLayoutHandles();
/* ... Some code ...*/
......
已知有一个XML文件(bookstore.xml)如下:
<?xml version="1.0" encoding="gb2312"?>
<bookstore>
<book genre="fantasy" ISBN="2-3631-4">
<title>Oberon's Legacy</title>
<author>Corets, Eva</author>
&nb ......
五、XML模式
l XML模式能更精确的处理XML结构约束的表示之外还为约束数据的处理提供一个XML样式。模式只是一个XML文档,受DTD的约束。对于XML模式而言,XML DTD只是一种创建文档约束的手段。因为XML模式是为了强化XML文档的有效性,它必须采用一种机制,而不是自己定义约束条件。这种机制必须是一个DTD。但是原始的D ......
2010-05-18
五、验证XML
l 属性了特征方法
方 法
返回类型
参 数
语 法
setProperty()
void
String propertyId,
Object value
parser.setProperty(“[Property URI]”,
”[Object parameter]”);
setFeature()
void
String feat ......