0

HTML:

<div class="nav">
  <ul>
      <li><a href="#">Home</a></li>
      <li><a href="#">About</a></li>
      <li><a href="#">Contact</a></li>
  </ul>
</div>

查询:

$('.nav ul li a').click(function () {
    var url = $(this).attr('href');
    var obj = {};

    $('.cnt').load(url + ' div', function (response) {
        obj['key'] = $(this).html();
    });

    return false;
});

我的问题是每次单击时,obj 只能获取一次密钥。我希望在每次下一次单击对象时保持上一个键并添加新键。它应该看起来像这样:

1st click obj{key}

2nd click obj{key,key}

现在看起来像这样:

1st click obj{key}

2nd click obj{key}
4

1 回答 1

0

An object can only have one value per key. You're setting the 'key' value of obj, so it's re-setting that key each time.

You want to be using an array instead.

var arr = [];
$('.nav ul li a').click(function () {
    var url = $(this).attr('href');

    $('.cnt').load(url + ' div', function (response) {
        arr.push($(this).html());
    });

    return false;
});
于 2013-01-14T15:37:25.287 回答