Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript .next()元素,该元素在JQUERY中具有特定属性(id)_Javascript_Jquery - Fatal编程技术网

Javascript .next()元素,该元素在JQUERY中具有特定属性(id)

Javascript .next()元素,该元素在JQUERY中具有特定属性(id),javascript,jquery,Javascript,Jquery,$(文档).ready(函数(){ $(“.btn”)。单击(函数(){ var level=$(this.attr('id'); 警报(级别); var ss=$(level.next().attr('id'); 警觉(ss); }); }); 您必须了解,只有在用户单击 所以,当您定义ss时,级别还没有定义。请记住,JavaScript主要是异步的 所以你必须这样做: var level //global $(".button").click(function () {

$(文档).ready(函数(){
$(“.btn”)。单击(函数(){
var level=$(this.attr('id');
警报(级别);
var ss=$(level.next().attr('id');
警觉(ss);
});
});




您必须了解,只有在用户单击

所以,当您定义ss时,级别还没有定义。请记住,JavaScript主要是异步的

所以你必须这样做:

var level //global
     $(".button").click(function () {
           level = $(this).attr("id");
            alert(level);//working
            var ss= $('#' + level).next().attr('id');
            alert(ss);//defined
        });
添加HTML时未看到您的编辑


已修复我的代码提案。但我真的建议你不要用数字作为id。在这里,如果你点击第二个,也是最后一个,.btn,就没有下一个了。所以它会崩溃。不要用“ss”作为变量名。因为这并不意味着什么。通过IDE中的实际代码缩小和代码自动完成,不再需要小变量名称。

attr()
,而不是
atrr()
。即使这样,您也应该使用
prop()
来代替。包括html标记是的,谢谢。我改变了问题。你又看了吗?已编辑并修复。谢谢。但不起作用。ss没有定义YetDin没有看到你的html。在我的回答中添加了一些修正