如何计算XML中指定两节点之间的节点数?

komoi 2009-04-16 03:30:13
例如:
<a>
<b></b>
<c></c>
<d></d>
<e></e>
<f></f>
</a>

如果想计算c到f之间有几个节点,怎么算?用VB实现
...全文
45 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
防google自动补齐,异步调用据 $(document).ready(function(){ //表示当前高亮的节点 highlightindex = -1; var timeoutId; var wordInput = $("#word"); var wordInputOffset = wordInput.offset(); $("#auto").hide().css("border","1px black solid").css("position","absolute").css("background-color","white") .css("top",wordInputOffset.top+wordInput.height() + 13 +"px") .css("left",wordInputOffset.left).width(wordInput.width() + 5); //控件1自动补全 wordInput.keyup(function(event){ //处理文本框的键盘事件 var myEvent = event||window.event; var keyCode = myEvent.keyCode; //对输入字符的判断 if((keyCode >= 65 && keyCode<=90) || (keyCode >= 48 && keyCode <= 57)||(keyCode>=96 && keyCode<=105) || keyCode ==46 || keyCode == 8 || keyCode == 32){ var wordText = $("#word").val(); var autoNode = $("#auto"); if(wordText!=""){ //把文本框的字符传到服务器端 //清除上次未完成的延时 clearTimeout(timeoutId); timeoutId = setTimeout(function(){ $.post("/wght/wght/bargain/searchIndex.do?word="+wordText,function(data){ //将dom对象data转换为jquery据 var jqueryObj = $(data); //找到所有word节点 var wordNodes = jqueryObj.find("word"); autoNode.html(""); //遍历word,将起放入对话框 wordNodes.each(function(i){ //取单词内容, var wordNode = $(this).text(); //新建div节点,将单词内容放到节点里,将节点放置页面 if(wordNode != null){ $("
").css("font-size","13px").css("height","18px").css("padding-top","1px").html(wordNode).appendTo(autoNode); } var completesVal=$("#auto").children("div"); var newDivNode =$("
").attr("id",i); //新增鼠标进入事件,高亮显示 completesVal.mouseover(function(){ if(highlightindex != -1){ $("#auto").children("div").eq(highlightindex).css("background-color","white"); } highlightindex = $(this).attr("id"); $(this).css("background-color","yellow"); }); //新增鼠标移出事件,取消高亮 completesVal.mouseout(function(){ $(this).css("background-color","white"); }); //鼠标单击事件,补全其内容 completesVal.click(function(){ var comText = $(this).text(); $("#auto").hide(); highlightindex=-1; $("#word").val(comText); }); }); //如果有据,显示之 if(wordNodes.length > 0){ autoNode.show(); }else { autoNode.hide(); highlightindex=-1; } },"xml"); },500); }else{ autoNode.hide(); highlightindex=-1; } }else if(keyCode == 38 || keyCode==40){ //如果输入的是向上38向下40按键 if(keyCode == 38){ //up var autoNodes = $("#auto").children("div"); if(highlightindex !=-1) { autoNodes.eq(highlightindex).css("background-color","white"); highlightindex--; }else{ highlightindex = autoNodes.length -1; } if(highlightindex == -1){ //如果修改索引值以后index变成-1,则将索引指向最后一个元素 highlightindex = autoNodes.length -1; } //让现在被高亮的内容变成黄色 autoNodes.eq(highlightindex).css("background-color","yellow"); }if(keyCode == 40){ //down var autoNodes =$("#auto").children("div"); if(highlightindex !=-1) { autoNodes.eq(highlightindex).css("background-color","white"); } highlightindex++; if(highlightindex == -1){ //如果修改索引值以后index变成-1,则将索引指向最后一个元素 highlightindex = 0; } //让现在被高亮的内容变成黄色 autoNodes.eq(highlightindex).css("background-color","yellow"); } }else if(keyCode == 13){ if(highlightindex !=-1) { var comText =$("#auto").hide().children("div").eq(highlightindex).text(); highlightindex=-1; $("#word").val(comText);//将文本框内容改成选项 //$("form:first").submit(); //提交form。若没有这句话,按下回车后,仅仅只改变了文本框里的内容,但是由于form本身就监控了回车按键默认为submit,提交的是文本框改变之前的内容,解决这个问题最简单的方式就是在文本框内容改变以后强制提交form的内容,此时,提交的内容就是选项。 }else{ $("#auto").hide(); //让文本框失去焦点 $("#word").get(0).blur(); } } }); })

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧