如何根据DOM的值更改变量

时间:2020-08-17 12:33:27

标签: javascript html dom google-apps-script

如何基于HTML中的用户选择更改变量(在我的情况下为“ docFileID”)。 例如,如果用户选择month-8,则docFileID将等于=“ qwer” 或者,如果用户选择9个月,则docFileID =“ jklk”,依此类推。

我已经尝试过了,但是没有用。我在控制台中收到此错误: 对createPdf感兴趣(代码:30)

HTML

<div class="input-field " style="padding:0.2cm;" >
                <select name="name" class="browser-default" id="sel">
           <option value="" disabled selected> Choose your option</option>
                  <option value="1">month-8</option>
                  <option value="2">month-9</option>
                  <option value="3">month-10</option>
                  <option value="4">month-11</option>
                  <option value="5">month-12</option>
                </select>

JavaScript

function addRecord (){
   
 var id =   document.getElementById('id').value;  
 var name = document.getElementById('name').value;
 var dep =  document.getElementById('dep').value;
 var job =  document.getElementById('job').value;

 var sel;    
    if(document.getElementById("sel").value == "mothe-8"){
        sel = '1zjkJ8f';
    }
    else{
      if(document.getElementById("sel").value == "month-9"){
          sel = '1mWjyTVx';
      } else{
          sel = '' ;
      }
      if(document.getElementById("sel").value == "month-10"){
        sel = '1s1GnG3fB7';
    } else{
        sel = '' ;
    }
    if(document.getElementById("sel").value == "month-11"){
        sel = '1OKuviyHRiWW';
    } else{
        sel ='' ;
    }
    if(document.getElementById("sel").value == "month-12"){
        sel = '1WbzrU12VEwuMsoE';
    } else{
        sel = '' ;
    }
    }
    
      
 
  google.script.run.withSuccessHandler(onSuccess).createPdf(name,id,dep,job,sel);
  google.script.run.withFailureHandler(onFailure).createPdf();
   
   } // addRecord  ended
我要更改的

code是其ID:

function createPdf (name,id,dep,job,sel,docFile,tempFolder,pdfFolder) {


    var docFileID= sel;
    
  
} // createPdf closed 

2 个答案:

答案 0 :(得分:0)

value属性引用HTML中的值,而不引用option元素的文本。另外,逻辑很混乱,您应该使用switch或至少使用else if

function addRecord(){
   var sel;  
   switch(document.getElementById("sel").value){
    case "month-8":
      sel = '1zjkJ8f';
      break;
    case "month-9":
       sel = '1mWjyTVx';
       break;
    case "month-10":
        sel = '1s1GnG3fB7';
        break;
    case "month-11":
        sel = '1OKuviyHRiWW';
        break;
    case "month-12":
        sel = '1WbzrU12VEwuMsoE';
        break;
   default:  
        sel = '' ;
    }
    console.log(sel);
 }
<div class="input-field " style="padding:0.2cm;" >
                <select name="name" class="browser-default" id="sel" onchange="addRecord()">
           <option value="" disabled selected> Choose your option</option>
                  <option value="month-8">month-8</option>
                  <option value="month-9">month-9</option>
                  <option value="month-10">month-10</option>
                  <option value="month-11">month-11</option>
                  <option value="month-12">month-12</option>
                </select>

答案 1 :(得分:0)

我将js更改为

var sel;    
    if(document.getElementById("sel").value == 1){
        sel = '1zjkJ8f';
    }
    else {
      if(document.getElementById("sel").value == 2){
          sel = '1mWjyTV';
      } else if (document.getElementById("sel").value == 3){
          sel = 'RLbSNM';
      } else if(document.getElementById("sel").value == 4){
         sel = '1OKIZ_xvtfNGNeUU3VNME';
    } else if (document.getElementById("sel").value == 5){
        sel = '1OKuv0-jIZ_xvtfNGNeUU3VNME' ;
    }    
    }