2

我正在根据 json 数据的内容动态生成复选框列表:

临时通道格式: [{"FairWay":"A"},{"FairWay":"B"}, {"FairWay":"C"}, {"FairWay":"D"}]

var topics = tempfairway;
var topicContainer = $('ul#fairway_list');
$.each(topics, function (iteration, item) { topicContainer.append(
$(document.createElement("li")).append(
$(document.createElement("input")).attr({
        id: 'topicFilter-' + item,
        name: item, 
        value: item,
        type: 'checkbox',
        checked: true
        })
        //onclick
        .click(function (event) {
         var cbox = $(this)[0];
         alert(cbox.value);
         })
).append(
$(document.createElement('label')).attr({
'for': 'topicFilter' + '-' + item
}).text(item)
   )
     )
});

复选框生成正确的数字,但我得到的是 [object Object] 而不是球道的名称。

有想法该怎么解决这个吗?

还有几个问题要补充:-如果我只想在 tempfairway 中显示唯一值怎么办?-.Click 设置为获取单个复选框的值,如果我想遍历所有复选框并获取在用户未选择其中任何一个的情况下选择的所有复选框的值怎么办?

4

1 回答 1

0

在行中:

> $.each(topics, function (iteration, item) {

item 是一个类似的对象{"FairWay":"A"},所以你有:

> .text(item)

你可能想要:

 .text(item.FairWay)

对于item. 或者您可以将值存储在变量中并使用它:

var fairwayName = item.FairWay;
...
.text(fairwayName);
于 2012-10-31T02:30:37.223 回答