js操作xml
先在客房端注册一段xml脚本
下面是一些具体操作XML的方法
这些都是在平常工作中所做的功能块。没写出具体的操作逻辑,只是一些用到的方法及属性
<XML ID='xmlDom'>
<CalForm Name="CalRoot" VarName="" ID="CalRoot" FieldType="CalForm" ObjectID="85">
<Field Name="Cost" VarName="TotalCost" LayerIndex="0" InitValue="-9999" OldValue="-9999" Value="-9999" />
<Field Name="Price" VarName="TotalProductCost" LayerIndex="0" InitValue="-9999" OldValue="-9999" Value="-9999" />
<Group Name="FYDEL" VarName="FYDEL" FieldType="Group">
<Item Name="Itemcs" VarName="Itemcs" FieldType="Item" LayerIndex="0" ObjectID="223" >
<Field Name="colproduct" VarName="colproduct" LayerIndex="0" InitValue="0" OldValue="0" Value="0" />
<Field Name="AsExempt" VarName="AsExempt" LayerIndex="0" InitValue="0" OldValue="0" Value="0" />
</Item>
</Group>
</CalForm>
</XML>
<CalForm Name="CalRoot" VarName="" ID="CalRoot" FieldType="CalForm" ObjectID="85">
<Field Name="Cost" VarName="TotalCost" LayerIndex="0" InitValue="-9999" OldValue="-9999" Value="-9999" />
<Field Name="Price" VarName="TotalProductCost" LayerIndex="0" InitValue="-9999" OldValue="-9999" Value="-9999" />
<Group Name="FYDEL" VarName="FYDEL" FieldType="Group">
<Item Name="Itemcs" VarName="Itemcs" FieldType="Item" LayerIndex="0" ObjectID="223" >
<Field Name="colproduct" VarName="colproduct" LayerIndex="0" InitValue="0" OldValue="0" Value="0" />
<Field Name="AsExempt" VarName="AsExempt" LayerIndex="0" InitValue="0" OldValue="0" Value="0" />
</Item>
</Group>
</CalForm>
</XML>
下面是一些具体操作XML的方法
var xml_Dom = document.getElementById('xmlDom').XMLDocument;
var xml_FieldNodes=xml_Dom.getElementsByTagName('Field');//得到Field节点集合
var xml_GroupNodes=xml_Dom.getElementsByTagName('Group');//得到Gruop节点集合。
var node = xml_Dom.selectSingleNode("//*[@ControlID='"+id+"']");// @ControlID匹配一个属性值。并找出对应id值的节点。
var str = node.getAttribute("VarName");//得到属性VarName的值。
node.setAttribute("OldValue",node.getAttribute('Value'));给OldValue属性赋Value属性的值。
for(var i=0;i<node.childNodes.length;i++)
{
node.childNodes[i];//遍历node节点下的所有子节点
}
if (node.tagName=="Field")//判断此节点是否属性Field还是Group.
{
//
}
node.parentNode.removeChild(node);//删除一个节点。
var xml_FieldNodes=xml_Dom.getElementsByTagName('Field');//得到Field节点集合
var xml_GroupNodes=xml_Dom.getElementsByTagName('Group');//得到Gruop节点集合。
var node = xml_Dom.selectSingleNode("//*[@ControlID='"+id+"']");// @ControlID匹配一个属性值。并找出对应id值的节点。
var str = node.getAttribute("VarName");//得到属性VarName的值。
node.setAttribute("OldValue",node.getAttribute('Value'));给OldValue属性赋Value属性的值。
for(var i=0;i<node.childNodes.length;i++)
{
node.childNodes[i];//遍历node节点下的所有子节点
}
if (node.tagName=="Field")//判断此节点是否属性Field还是Group.
{
//
}
node.parentNode.removeChild(node);//删除一个节点。
这些都是在平常工作中所做的功能块。没写出具体的操作逻辑,只是一些用到的方法及属性