Javascript 选择不工作-单击时不显示选项

Javascript 选择不工作-单击时不显示选项,javascript,jquery,html,firebase,google-cloud-firestore,Javascript,Jquery,Html,Firebase,Google Cloud Firestore,我使用MaterializeCSS创建了一个select标记。动态创建此选择标记的选项。从firebase检索数据,然后创建选项。 但当我单击“选择”标记时,不会显示选项。但当我去检查时,它会显示那些选项在选择标签中。 如何解决这个问题 这就是HTML部分 <!DOCTYPE html> <html> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/mate

我使用MaterializeCSS创建了一个select标记。动态创建此选择标记的选项。从firebase检索数据,然后创建选项。 但当我单击“选择”标记时,不会显示选项。但当我去检查时,它会显示那些选项在选择标签中。 如何解决这个问题

这就是HTML部分

<!DOCTYPE html>
<html>
  <link
    rel="stylesheet"
    href="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/css/materialize.min.css"
  />

  <link
    href="https://fonts.googleapis.com/icon?family=Material+Icons"
    rel="stylesheet"
  />


  <!-- Compiled and minified JavaScript -->

  <!-- <link
    rel="stylesheet"
    href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
  /> -->

  <head>
    <title></title>
  </head>
  <body>
    <div class="container">
      <h2>Create schedule</h2>

      <div class="input-field col s12">
    <select id="doctors"  onchange="myFunction()">
      <option value="0" disabled selected>Choose your option</option>
    </select>
    <label>Materialize Select</label>
  </div>
</div>







    <!-- Insert these scripts at the bottom of the HTML, but before you use any Firebase services -->

    <!-- Firebase App (the core Firebase SDK) is always required and must be listed first -->
    <script src="https://www.gstatic.com/firebasejs/7.12.0/firebase-app.js"></script>

    <!-- If you enabled Analytics in your project, add the Firebase SDK for Analytics -->
    <script src="https://www.gstatic.com/firebasejs/7.12.0/firebase-analytics.js"></script>

    <!-- Add Firebase products that you want to use -->
    <script src="https://www.gstatic.com/firebasejs/7.12.0/firebase-auth.js"></script>
    <script src="https://www.gstatic.com/firebasejs/7.12.0/firebase-firestore.js"></script>

    <script src="config.js"></script>

    <!-- <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> -->
    <script
      src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js"
      integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo="
      crossorigin="anonymous"
    ></script>

    <script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js"></script>

    <script>
      $(document).ready(function() {

        $('select').formSelect();

      });
    </script>

    <script src="doctor_scheduler_JS.js"></script> //external js file
  </body>
</html>

创建时间表
选择你的选择
物化选择
$(文档).ready(函数(){
$('select').formSelect();
});
//外部js文件
外部js文件(doctor_scheduler_js.js)

const auth=firebase.auth();
const db=firebase.firestore();
var doctorsnames=[];
var doctorsuids=[];
const dropdown=document.getElementById(“医生”);
const option1=document.createElement(“选项”);
db.收集(“医生”)
.get()
.then(函数(querySnapshot){
querySnapshot.forEach(函数(doc){
//对于查询文档快照,doc.data()从来都不是未定义的
console.log(doc.id,=>,doc.data());
//var js=JSON.stringify(doc.data());
//document.getElementById(“container25”).innerHTML=js;
doctorsnames.push(doc.data().Name.fullname);
doctorsuids.push(doc.id);
});
SetDropDown();
})
.catch(函数(错误){
log(“获取文档时出错:”,错误);
});
函数SetDropDown(){
var循环=0;
doctorsnames.forEach(k=>{
//feildcotorsnames+=k+“
”; var option1=document.createElement(“选项”); option1.value=doctorsuids[loop]; option1.innerHTML=k; 下拉列表。追加子项(选项1); loop++; }); document.getElementById(“container25”).innerHTML=doctorsuids; } var show=[“印度”、“巴基斯坦”、“美国”、“英国”]; 风险价值=[“3”、“4”、“5”、“6”]; var j=0; show.forEach(i=>{ const option1=document.createElement(“选项”); 选项1.value=值[j]; option1.innerHTML=i; 下拉列表。追加子项(选项1); j++; });
问题在于代码的这一部分

$.ajax({
url:'upload.php',//指向服务器端php脚本
数据:表格数据,
键入:“post”,
成功:功能(数据){
console.log(data);//显示来自PHP脚本的响应(如果有)
}
});
将这些参数添加到ajax调用中

    $.ajax({
        url: 'upload.php', // point to server-side PHP script 
        data: form_data,         
        enctype: 'multipart/form-data',
        type: 'post',
        processData: false,
        contentType: false,
        success: function(data){
            console.log(data); // display response from the PHP script, if any
        }
     });
请参阅这里的Jquery文档

processData

默认情况下,数据作为对象传递到数据选项 (从技术上讲,字符串以外的任何内容)将被处理并 转换为查询字符串,符合默认内容类型 “application/x-www-form-urlencoded”。如果你想发一封信 DOMDocument或其他未处理的数据


只需添加一个包含enctype=“multipart/form data”的表单,然后在表单数据中使用该表单

您的
数据
字段中似乎存在类型不匹配。尝试发送一个简单的
字符串(它可能是一个字符串化的JSON对象)。另外,看看这个:。无论如何,你应该在提出你的问题上投入更多的精力。
    $.ajax({
        url: 'upload.php', // point to server-side PHP script 
        data: form_data,         
        enctype: 'multipart/form-data',
        type: 'post',
        processData: false,
        contentType: false,
        success: function(data){
            console.log(data); // display response from the PHP script, if any
        }
     });