jquery .each函数和传递变量

时间:2015-03-24 13:42:20

标签: javascript jquery

我想在无序列表中循环遍历一组<a>

在jQuery中,我会这样做:

$("#list ul li a").each(function (x) {
 // Do Stuff
});

这可能是一个简单的问题,但是如何通过函数中显示的id来传递变量?我想它会是这样的:

  var myVar = 'foo';
   $("#list ul li a").each(myVar, function (x) {
     // Do Stuff
     console.log(x);
    });

控制台输出:foo

但这似乎不起作用,我该怎么做?

3 个答案:

答案 0 :(得分:2)

您不需要在each(myVar, function(x)上传递变量。您可以在myVareach使用var myVar = 'foo'; $("#list ul li a").each(function (x) { // Do Stuff console.log(x); // element index console.log(myVar); //foo });

var myVar = 'foo';
$("#list ul li a").each(myVar, function (x) {
    // Do Stuff
    console.log(x);
});

请使用此代码查看出错

funtion

你会得到:

  

未捕获的TypeError:undefined不是函数

因为将第一个参数表示为function(x)并且它是一个变量。

永远不会调用each,因为{{1}}只占用1个参数。

答案 1 :(得分:0)

这是解决方案,

只需使用&#34;这个&#34;像这样的关键字:

        var myVar = 'foo';
        $("#list ul li a").each(function () {
           console.log($(this).attr('id'));
        });

由于

答案 2 :(得分:-4)

var myVar = 'foo';
   $("#list ul li a").each(myVar, function (id) {
     // Do Stuff
     console.log(id.attr("id"));
    });