Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 未捕获类型错误:sel.add不是函数_Javascript_Function_Add_Html Select - Fatal编程技术网

Javascript 未捕获类型错误:sel.add不是函数

Javascript 未捕获类型错误:sel.add不是函数,javascript,function,add,html-select,Javascript,Function,Add,Html Select,带有选择标记的HTML: <select id="sel"></select>` ` 在JavaScript部分,我尝试在“选择”下拉列表中添加选项,在循环中为选项指定数组值: var sel = document.getElementById('sel').value; var jsonobj = {School_charles: {class_A: [{ idkey: "1", name: "john" }, { idkey: "2",

带有选择标记的HTML:

<select id="sel"></select>`
`
  • 在JavaScript部分,我尝试在“选择”下拉列表中添加选项,在循环中为选项指定数组值:

    var sel = document.getElementById('sel').value;
    var jsonobj = {School_charles: {class_A: [{ idkey: "1", name: "john" },
                  { idkey: "2", name: "jill" }]}};
    
    for(var i = 0; i <= jsonobj.School_charles.class_A.length; i++) {
        var option = document.createElement('option');
        option.text = jsonobj.School_charles.class_A[i].idkey;
        option.value = jsonobj.School_charles.class_A[i].name;
        sel.add(option);    
    }
    

    var sel=document.getElementById('sel').value;
    var jsonobj={School_charles:{class_A:[{idkey:“1”,name:“john”},
    {idkey:“2”,名字:“吉尔”}]};
    
    对于(var i=0;i您的代码中有两个错误:


  • var sel=document.getElementById('sel').value;
    应该是
    var sel=document.getElementById('sel');
    所以变量
    sel
    引用实际的select元素而不是select值。这就是无法识别
    add()
    方法的原因

  • 您的for循环条件应仅为
    i
    ,而不是
    您的代码中有两个错误:


  • var sel=document.getElementById('sel').value;
    应该是
    var sel=document.getElementById('sel');
    所以变量
    sel
    引用实际的select元素而不是select值。这就是无法识别
    add()
    方法的原因
  • 您的for循环条件应该只有
    i
    ,而不是
    两个错误

    • document.getElementById('sel')。值应为
      document.getElementById('sel')
    • 有两个错误

      • document.getElementById('sel')。值应为
        document.getElementById('sel')

      • i var sel=document.getElementById('sel').value;必须mbe var sel=document.getElementById('sel');var sel=document.getElementById('sel').value;必须mbe var sel=document.getElementById('sel');