如何使用Materialize刷新/更新Javascript(香草)中的select?

如何使用Materialize刷新/更新Javascript(香草)中的select?,javascript,html,select,materialize,dynamically-generated,Javascript,Html,Select,Materialize,Dynamically Generated,我试图通过使用Javascript(香草)和Materialize来更新select小部件中的选项。我猜它与“动态生成的选择元素”有关,但我不确定该怎么办 根据我可能需要考虑的实现:“此外,您还需要单独调用任何动态生成的选择元素。”不幸的是,我不确定(没有找到)如何“动态生成的select元素”来更新/刷新select小部件 以下是我的相关代码: HTML 人名 删除删除 投票数? 选择1 选择2 选择3 Javascript(香草) //------------ //自动的 //-----

我试图通过使用Javascript(香草)和Materialize来更新select小部件中的选项。我猜它与“动态生成的选择元素”有关,但我不确定该怎么办

根据我可能需要考虑的实现:“此外,您还需要单独调用任何动态生成的选择元素。”不幸的是,我不确定(没有找到)如何“动态生成的select元素”来更新/刷新select小部件

以下是我的相关代码:

HTML


人名
删除删除
投票数?
选择1
选择2
选择3
Javascript(香草)

//------------
//自动的
//------------
//挑选
document.addEventListener('DOMContentLoaded',function(){
var el=document.querySelectorAll('select');
var实例=M.FormSelect.init(el);
});
//按钮-添加
document.getElementById(“btn”).addEventListener(“单击”,PersonInfo);
//按钮-移除
document.getElementById(“btnRemove”).addEventListener(“单击”,PersonDelete);
函数PersonInfo(){
调试器;
var selectobject=document.createElement(“选项”);
选择object.text=“Text55”;
选择object.value=“myvalue55”;
var selectList=document.getElementById(“voteNoList”);
selectList.appendChild(selectobject);
调试器;
返回;
}
函数PersonDelete(){
调试器;
var selectobject=document.getElementById(“voteNoList”);

对于(var i=0;i显然,我的案例的解决方案是在
return
之前添加
M.FormSelect.init(selectList);

<!--Let browser know website is optimized for mobile-->
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<!--Import Google Icon Font-->
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<!-- Compiled and minified CSS -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/css/materialize.min.css">
<div class = "container">
    <div class="row">
      <div class="input-field col s3">
        <button id = "btn" class="waves-effect waves-light btn-small"><i class="material-icons left">person_add</i>Add</button>
      </div>
      <div class="row">
      <div class="input-field col s3">
        <button id = "btnRemove" class="waves-effect waves-light btn-small"><i class="material-icons left">delete</i>Remove</button>
      </div>
    </div> <!-- CLOSE ROW -->

    <div class="row">
      <div>
        <div style = "position:relative; top:-10px;" class="input-field col s6">
          <select id="voteNoList" onchange="PersonInfo()" required>
            <option value="">Vote Number?</option>
            <!-- <?!= currListNo; ?>
               -->
            <option value="1">Option 1</option>
            <option value="2">Option 2</option>
            <option value="3">Option 3</option>
          </select>
        </div>
      </div>
    </div> <!-- CLOSE ROW -->
</div> <!-- CLOSE CONTAINER -->
  //------------
  // AUTO
  //------------
  // Select
  document.addEventListener('DOMContentLoaded', function() {
    var el = document.querySelectorAll('select');
    var instances = M.FormSelect.init(el);
  });

  // Button - Add
  document.getElementById("btn").addEventListener("click", PersonInfo);

  // Button - Remove
  document.getElementById("btnRemove").addEventListener("click", PersonDelete);

  function PersonInfo(){

    debugger;
    var selectobject = document.createElement("option");
    selectobject.text = "Text55";
    selectobject.value = "myvalue55";
    var selectList = document.getElementById("voteNoList");
    selectList.appendChild(selectobject);  
    debugger;
    return;        
  }

  function PersonDelete(){

    debugger;
    var selectobject=document.getElementById("voteNoList");
    for (var i=0; i<selectobject.length; i++){
      if (selectobject.options[i].value == "2"){
         selectobject.remove(i);
        break;
      }
    } 
    debugger;
    return;     
  }