首页 > 解决方案 > javascript 代码错误:未捕获的 ReferenceError:**** 未在 HTMLDivElement.onclick 中定义

问题描述

我对 javascript 很陌生,我正在尝试为网站编写代码。我在工作中遇到了一些错误,我仍然无法弄清楚发生了什么,如果您有任何想法,请告诉我。在创建此函数之前,我的 javascript 代码运行良好

function setFilter(filter){
  $(".filtre").onclick(function(){
    var theClass = this.className;
    var mainClass = theClass.split(' ')[0]
    console.log(mainClass)
    for (i=0; i< filter['filters'].length;i++){
              for (j=0;j< filter['filters'][i]['value'].length;j++){
                if ( filter['filters'][i]['value'][j]["id"] === theClass){
                    filter['filters'][i]['value'][j]["selected"] = true;
            }}}
})}

我希望代码在单击元素时修改对象的“选定”键。因此,我选择了单击的元素类名称来确定我应该更改对象的哪一行。然后我对整个对象进行循环以获取与我的元素的 CSS 类相似的 keyid 名称的行。然后在该行上,它应该将选定的键从 False 更改为 True。

我的对象的例子:

filter = {'filters': [

  {'type_': 'designOutline',
   'label': 'Design Outline',
   'value': [{'id': 'full', 'label': 'Full', 'selected': false},
    {'id': 'outline', 'label': 'Outline', 'selected': false}]}]}

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

标签: javascriptdom

解决方案


推荐阅读