Storage.prototype.setObj = function(key, obj) {
return this.setItem(key, JSON.stringify(obj))
^-----Error in this line: Uncaught TypeError: Accessing selectionDirection on an input element that cannot have a selection
}
var selected = jQuery('input:checkbox.mychkbox:checked').each(function() {
return this.id;
});
sessionStorage.setObj("savedCollSearch",selected);
我正在使用 jQuery 1.7.2 和 Chrome 22。 此错误在 Firefox 16 中显示为 Uncaught Exception。在 SO 和 Google 中搜索没有帮助,我不知道如何解决此问题。
我 100% 确定 jQuery 已正确加载。
最佳答案
这个表情...
var selected = jQuery('input:checkbox.mychkbox:checked').each(function() {
return this.id;
});
...这里似乎被误用了:它将返回一个 jQuery 包装的选中复选框元素的集合,这可能不太容易字符串化(因为循环引用)。
(作为旁注,.each
将在第一个没有 id
的元素处停止迭代,或者将其设置为空字符串,但这在这里并不重要)
您可能想改用它:
var selected = jQuery('input:checkbox.mychkbox:checked').map(function() {
return this.id;
}).get();
关于javascript - javascript 函数中未捕获的类型错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12916822/