上一个实例……这种畸形需求……条件太苛刻
建议根据属性值猜一个属性名,毕竟属性名是有限的,而且是有规律的
推荐方法如:$([class="属性值"], [id="属性值"], [title="属性值"])
如果是 data 数据,也可以进行遍历,或者转换成文本进行检索
JSONstringify($('#blog_nav_rss')data())match(/"([\w-]+)":"[^"]检索的内容[^"]"/g)
如果把网页文档转换成文本进行全文检索,效率低下,效果不好。$('body')html()match(/([\w-]+)="[^"]检索的内容[^"]"/g)
1、用 childNodes 属性,按顺序取实现过程:首先创建一个 xml 对象,然后载入 xml 文件,再根据待取节点父节点在 xml 文件中的序号和本身的序号,确定待取节点的位置,最后返回待取节点的值。
//pId 待取节点父节点序号
//cId 待取节点序号
function getXmlNodeValue(pId, cId) {
var xmlDoc = new ActiveXObject("MicrosoftXMLDOM");
xmlDocasync = false;
xmlDocload("employeeInfoxml");
var nodes = xmlDocdocumentElementchildNodes[pId]childNodes[cId];return nodeschildNodes[0]text;
}
调用方法:alert(getXmlNodeValue(1, 2));
2、用 for 循环来取
实现过程:首先创建一个 ie 支持的 xml 对象,如果发生异常,是创建一个 FireFox 支持的空 xml 对象并返回空;然后载入 xml 文件,如要发生异常也返回空;最后,通过 for 循环遍历查找与传入的节点值相同的节点,找到后返回属于该节点的属性值。
//nodeValue 待取节点的所属节点值
function getXmlNodeValueFor(nodeValue){
var xmlDoc;
try {
//创建一个 ie 支持的 XML 文档对象
xmlDoc = new ActiveXObject("MicrosoftXMLDOM");
}catch(e){
try{
//创建FireFox空的XML文档对象
xmlDoc=documentimplementationcreateDocument("","",null);
}catch(e){
alert(emessage);
return "";
}
}可以使用jq选择器,先根据元素类型获得元素对象,再获得那么,使用的时候each一下就可以了。$("标签名")attr(“name”)each(function(){ echo $(this)attr("name")});
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)