假定这个xml是一个字串 $xml
$xml = new SimpleXMLElement($xml);
$autoPlay = $xml->attributes()->autoPlay;
$autoNextSong = $xml->attributes()->autoNextSong;
这样你获取的会是两个对象, 如果需要用来做某些特定的事情, 比如显示
echo (string)$autoPlay;
elSetAttribute("name","风云"); //添加person节点的属性"name"
elSetAttribute("sex","女"); //添加person节点的属性 "sex"
elSetAttribute("age","25"); //添加person节点的属性 "age"
XmlElement xesub1=xmlDocCreateElement("pass"); //添加person节点的里的节点
xesub1InnerText="123";//设置文本节点
elAppendChild(xesub1);
XmlElement xesub2=xmlDocCreateElement("Address");
xesub2InnerText="昆明";//设置文本节点
elAppendChild(xesub2);
xmldocSelectAppendChild(el);
xmlDocSave(ServerMapPath("userxml"));}//修改节点private void UpdateElement(){LoadXml();XmlNodeList nodeList=xmlDocSelectSingleNode("user")ChildNodes;//获取bookstore节点的所有子节点
foreach(XmlNode xn in nodeList)//遍历所有子节点{XmlElement xe=(XmlElement)xn;//将子节点类型转换为XmlElement类型
if(xeGetAttribute("name")=="风云")//如果name属性值为风云{xeSetAttribute("name","发明");
//如果下面有子节点在下走
XmlNodeList nls=xeChildNodes;//继续获取xe子节点的所有子节点
foreach(XmlNode xn1 in nls)//遍历{XmlElement xe2=(XmlElement)xn1;//转换类型
if(xe2Name=="pass")//如果找到{xe2InnerText="66666";//则修改break;}}break;}}xmlDocSave(ServerMapPath("userxml"));//保存}//删出节点private void deleteNode(){LoadXml();XmlNodeList xnl=xmlDocSelectSingleNode("user")ChildNodes;
foreach(XmlNode xn in xnl){XmlElement xe=(XmlElement)xn;
if(xeGetAttribute("name")=="发明"){//xeRemoveAttribute("name");//删除name属性
xeRemoveAll();//删除该节点的全部内容break;}}xmlDocSave(ServerMapPath("userxml"));//保存}private void showIt(){LoadXml();XmlNode xn=xmlDocSelectSingleNode("user");
XmlNodeList xnl=xnChildNodes;
foreach(XmlNode xnf in xnl){XmlElement xe=(XmlElement)xnf;
// ConsoleWriteLine(xeGetAttribute("name"));//显示属性值
// foreach(XmlNode xn2 in xnf1)// {// ConsoleWriteLine(xn2InnerText);//显示子节点点文本// }}
先把子节点新建一个类。
如:
@XmlRootElementpublic class URI {
private String url;
private String mimetype;
@XmlValue
public String getUrl() {
return "<![CDATA[" + url+ "]]>";
}
public void setUrl(String url) {
thisurl = url;
}
@XmlAttribute
public String getMimetype() {
return mimetype;
}
public void setMimetype(String mimetype) {
thismimetype = mimetype;
}
}<pre name="code" class="java">这样用这个类型生成的子节点都有<pre name="code" class="java">mimetype属性</pre></pre><br>
XmlDocument xmlDoc=new XmlDocument ();
xmlDocload("aaaxml");
XmlNodeList xnl=xmlDocselectNodes("//a/abc[@id=88]");
foreach(XmlNode xn in xnl)
{
xmlDocdocumentElementremoveChild(xn)
}
messageBox(xmlDocinnerXml);
先找出要删除的集合,再循环的移除。最后的xmlDoc是你想要的
不知道是不是这个意思。
1JS方法:
<script>windowonload=function(){
var va = documentgetElementById("d1")childNodes;
for(var i=0;i<valength;i++){
if(va[i]nodeNametoLocaleUpperCase() == "A"){
alert("JS: "+va[i]attributes["linkId"]nodeValue);
}
}
};
</script>
2 Jquery方法:
<script src="jquery-191minjs" type="text/javascript"></script>
<script>
$(document)ready(function(){
$("#d1 a")each(function(){
alert("Jquery: "+$(this)attr("linkId"));
});
});
</script>
JS 获取HTML标签内的子节点的方法
子节点的个数:
documentgetElementById("id")childNodeslength
注意: 标签开/闭合算2个节点 第几个子几点:
documentgetElementById("id")childNodes[n]
示例:
这里是 length-4 处,margin-left:20px
输出:length=8
实例:
<div id="page_kx" style="text-align: center;" class="tac"> <span class="fy2">1</span> <a href="#">2</a> <a href="#">3</a> <a href="#">4</a> <a href="#">5</a> <a href="#">下一页</a> <a href="#">末页</a> </div> <script> var gor=documentgetElementById("page_kx"); var gorL=Number(gorchildNodeslength)-4; gorchildNodes[gorL]stylemargin="0 0 0 20px"; </script>
以上就是关于php怎么获取XML节点属性值全部的内容,包括:php怎么获取XML节点属性值、如何读取xml节点中的属性、jaxb怎么读取 节点值和属性值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)