我使用以下方法在浏览器上显示XML。
val interceptFuncs = eventFilters.map(_.intercept _) //Seq[Foo => Foo]
Function.chain(interceptFuncs)(startingValue)
Chrome上的结果低于
string fn="first_name";
string ln = "last_name";
string ec="0";
string desc = "Success";
string xml = "<response><variables><var name=\"" + fn + "\" expr=\"" + fName + "\" /><var name=\"" + ln + "\" expr=\"" + lName + "\" /></variables><error code=\"" + ec + "\" description =\"" + desc + "\" /></response>";
// XmlDocument xmlDoc = new XmlDocument();
// xmlDoc.LoadXml(xml);
Response.Clear();
Response.ContentType = "text/xml; charset=utf-8";
Response.ContentEncoding = Encoding.UTF8;
Response.Write(xml);
Response.End();
在IE中,它采用以下格式
<response>
<variables>
<var name="first_name" expr="API"/>
<var name="last_name" expr="VCCAudit"/>
</variables>
<error code="0" description="Success"/>
</response>
问题是Chrome显示正确的XML,其中IE更改了name和expr的序列,同样的事情发生在错误标记中,其中描述和代码序列发生了变化。
请帮助这方面。 感谢
答案 0 :(得分:0)
属性没有特定的顺序。
&#34;请注意,start-tag或中的属性规范的顺序 空元素标签不重要。&#34;
参考:http://www.w3.org/TR/REC-xml/#sec-starttags
因此,显示属性的方式都是正确的。 XML不会通过重新排序标记中的属性来改变含义。
如果您希望以任何特定方式显示XML,您需要自己显示它,而不是依赖浏览器中的内置支持来显示XML。