从$ .each循环创建键值对对象

时间:2012-11-30 04:14:32

标签: jquery javascript-objects

我正在尝试通过一些DOM元素在循环中创建一个具有键值对的对象。

关于我正在做的整体背景的一些背景:这部分代码是我正在创建的问卷的一部分。

这是有问题的代码:

var resultsView = {};        
function sumAnswers(className) {
       //some stuff here

        $(className:checked).each(function() {
        //some other code here to sum answers  

        var text = $(this).siblings('.question').text();
        var answer = $(this).next('label').text();
        resultsView[text] = answer;
        });
  }

我正在尝试将键/值关系中的问题文本和选定的答案文本添加到对象中,这样我以后可以通过AJAX将其传递给PHP文件。

问题是当我在console.log resultsView时,它只会多次添加一个问题/答案。将运算符更改为+ =也不起作用。我做错了什么?

1 个答案:

答案 0 :(得分:0)

我无法看到这样的问题,请你在下面的jsfiddle

中查看

http://jsfiddle.net/sZYaf/19/

我在上面指定的情况下创建了类似的代码

$("#check").click(function(){

var resultsView = {};
$(".check:checked").each(function() {
    //some other code here to sum answers  

    var text = $(this).siblings('.question').text();
    var answer = $(this).next('label').text();
    resultsView[text] = answer;

    });
 alert(resultsView["question1"]  + resultsView["question2"] );
});

由于