Ⅰ JQUERY选取 上一个兄弟元素
前两位所写:一个是查找全部的input控件的同辈元素,另一个是查找下一个同辈元素。
我以前也遇到过这种问题,向下找容易,向上找较麻烦,我就直接在前面放一个隐藏域,再通过这个隐藏来向下找就可以找到上一个兄弟元素了
Ⅱ JQUERY怎么选取上一个兄弟元素
<script type="text/javascript"> $(function(){ alert($("input[type='checkbox']").prev().val()); }) </script>
Ⅲ jquery怎么获取当前节点的前一个节点
jquery获取当前节点的前一个节点步骤如下:
1、打开html开发工具,新建一个html代码页面。
Ⅳ 我在看javascript语言精粹里面有一个例子,有例子但是没有使用,谁可以正确的使用下有点不理解
1. walk_the_DOM方法:这个方法的主要作用就只是遍历某个DOM节点(node)下的所有子节点,并且在遍历到每个节点的时候,都是执行参数中传入的那个方法(func),你要是想要对遍历到的节点做些其他什么事情,那么你自己就可以自定义个函数,把它当参数传入到walk_the_DOM方法里就行了;这个方法里可能会有疑问的地方:
1.1 debugger; 关键字,这个是调式js代码用的,你如果用ASP.NET调试的时候,你的js代码里
写有debugger关键字,那么执行到debugger的时候就会中断执行,就像加个断点一样。当
然在IE的开发人员工具里调试,效果也是一样的。
1.2 node.firstChild :这个是取得指定节点的第一个子节点。
1.3 node.nextSibling:取得指定节点的下一个兄弟节点。
2.getElementsByAttribute方法:这个方法里调用了walk_the_DOM方法遍历body对象,主要作用是根据HTML标记中的指定属性,取得所有该属性值等于传入值的HTML控件对象。先整个例子吧:
<html>
<head>
<scriptlanguage="javascript">
functionWindow_Load(){
//自定义属性depth为2的所有html控件对象
varelements=getElementsByAttribute("depth","2");
alert(elements[0].outerHTML);
//取得所有width为29的html控件对象
varelements=getElementsByAttribute("width","29");
}
varwalk_the_DOM=functionwalk(node,func){
debugger;
func(node);
node=node.firstChild;
while(node){
walk(node,func);
node=node.nextSibling;
}
};
vargetElementsByAttribute=function(att,value){
varresults=[];
walk_the_DOM(document.body,function(node){
varactual=node.nodeType===1&&node.getAttribute(att);
if(typeofactual==='string'&&
(actual===value||typeofvalue!=='string')){
results.push(node)
}
});
returnresults;
};
</script>
</head>
<bodyonload="Window_Load();">
<divid="node1">
<divid="node11"depth="2"width="30">dd</div>
<divid="node12"depth="2"width="29">dd</div>
<divid="node13"depth="2"width="29">dd</div>
</div>
</body>
</html>
这里的属性,可以是HTML标记的默认属性,也可以是自定义的属性。getElementsByAttribute方法里,比较难理解的地方可能是下面这一句:
varactual=node.nodeType===1&&node.getAttribute(att);
理解这段代码,先要清楚javascript里运算符的优先级(http://book.51cto.com/art/200807/83043.htm),它的执行顺序用括号标注下:
varactual=((node.nodeType===1)&&node.getAttribute(att));
先执行等同于(===),在执行逻辑和(&&),最后才赋值。另外你还要去了解一下逻辑运算符的“短路”方式(http://www.cnblogs.com/pigtail/archive/2012/03/09/2387486.html),这个在js里会用的比较多,但是其他语言可能不支持这样的用法。 总之上面这句代码跟下面这片代码的作用是一样一样的:
varactual;
if(node.nodeType!==1){
actual=node.nodeType===1;//得到的是个整型数值(Numeric)
}else{
actual=node.getAttribute(att));//得到的是个字串(String)
}
Ⅳ 点击onTd()事件怎么获得tid2的父节点<rid2>的上一个兄弟节点<rid1>下的<tid1>下的<textarea>的id代码如下
onTd(当前节点的num 也就是你所说的2)
循环生成这个 table
使这些tr td 的 id 有规律。
id_num = num -1;
jq代码: $("#tid"+id_num +" txtid").val();
Ⅵ jquery如何获取某一个兄弟节点,不是全部的,是指定的兄弟节点
$('#id').siblings() 当前元素所有的兄弟节点
$('#id').prev() 当前元素前一个兄弟节点
$('#id').prevaAll() 当前元素之前所有的兄弟节点
$('#id').next() 当前元素之后第一个兄弟节点
$('#id').nextAll() 当前元素之后所有的兄弟节点
这三个方法都可以添加选择器,给出选择条件,就能找到你指定的兄弟节点了。
(6)访问指定节点的上一个兄弟节点扩展阅读
1、jquery 获取元素(父节点,子节点,兄弟节点)
$("#test1").parent(); // 父节点
$("#test1").parents(); // 全部父节点
$("#test1").parents(".mui-content");
$("#test").children(); // 全部子节点
$("#test").children("#test1");
$("#test").contents(); // 返回#test里面的所有内容,包括节点和文本
$("#test").contents("#test1");
$("#test1").prev(); // 上一个兄弟节点
$("#test1").prevAll(); // 之前所有兄弟节点
$("#test1").next(); // 下一个兄弟节点
$("#test1").nextAll(); // 之后所有兄弟节点
$("#test1").siblings(); // 所有兄弟节点
$("#test1").siblings("#test2");
$("#test").find("#test1");
2、元素筛选
// 以下方法都返回一个新的jQuery对象,他们包含筛选到的元素
$("ul li").eq(1); // 选取ul li中匹配的索引顺序为1的元素(也就是第2个li元素)
$("ul li").first(); // 选取ul li中匹配的第一个元素
$("ul li").last(); // 选取ul li中匹配的最后一个元素
$("ul li").slice(1, 4); // 选取第2 ~ 4个元素
$("ul li").filter(":even"); // 选取ul li中所有奇数顺序的元素
Ⅶ jquery怎么找到当前点击事件的对象的第一个兄弟节点
$('#id').next() 当前元素之后第一个兄弟节点
Ⅷ jquery如何查找到最近的指定名字的兄弟节点!!!急,求帮助
如果顺序不变你可以使用prev()寻找目标的前一个同辈节点,如果你只知道2这相邻可以这样写
var target=jQuery(this).prev(".scd").length>0?jQuery(this).prev(".scd"):jQuery(this).next(".scd");target就是获取fir相邻的同辈节点
Ⅸ xpath如何获取标签内容相同的兄弟节点
$('#id').siblings() 当前元素所有的兄弟节点
$('#id').prev() 当前元素前一个兄弟节点
$('#id').prevaAll() 当前元素之前所有的兄弟节点
$('#id').next() 当前元素之后第一个兄弟节点
$('#id').nextAll() 当前元素之后所有的兄弟节点
这三个方法都可以添加选择器,给出选择条件,就能找到你指定的兄弟节点了。