1
items = checkListBox3.GetSelectedItems();
for (var i = items.length - 1; i >= 0; i = i - 1) {
items[i].text, items[i].value;
}
alert(items);

我在列表框中选择了 3 个项目,因此警报结果如下

[object Object],[object Object],[object Object]

为什么我看不到我的 Id 值?

任何帮助将不胜感激。

谢谢。

4

2 回答 2

2

改为使用alert(JSON.stringify(items, '', 4));

JSON.stringify

于 2013-10-12T06:40:46.790 回答
1

您在 for 循环中的行:

items[i].text, items[i].value;

...实际上并没有做任何事情。您当前没有将这些值分配给其他变量或以其他方式对它们进行任何处理。然后当你说alert(items)你只是得到你的默认toString()转换,items它会产生[object Object],[object Object],[object Object]你提到的输出。

如果您只想查看警报中每个选项的值和/或文本,请尝试以下操作:

var items = checkListBox3.GetSelectedItems(),
    msg = "";
for (var i = items.length - 1; i >= 0; i = i - 1) {
    msg += items[i].text + " (" + items[i].value + ")\n";
}
alert(msg);

也就是说,从一个空字符串 开始msg,然后在循环的每次迭代中添加当前项目的文本和值。然后在循环后显示字符串。

或者是这样的:

var items = checkListBox3.GetSelectedItems();
alert( Array.prototype.map.call(items, function(item) {
          return item.text + " (" + item.value + ")";
       }).join(", ") );
于 2013-10-12T07:53:13.747 回答