Повторное расследование "Попытка сделать другой HTML абзац в зависимости от выбора" - PullRequest
0 голосов
/ 31 января 2020

Я спрашивал об этом ранее , но не смог предоставить достаточно подробностей, поэтому я решил отдать должное, где это необходимо (ответы были превосходными, но я не ответил на мою проблему, потому что не смог предоставьте достаточно информации) и начните все сначала.

Итак, у меня есть эта пара модальностей; тот, который принимает текстовый ввод, и тот, который получает ввод из выпадающего списка, в листах Google и сценариях (см. гиперссылки), который должен предоставлять другой описательный абзац в зависимости от какой выбор сделал пользователь из выпадающего списка. В настоящее время он показывает только один абзац, который не меняется в зависимости от выбора. Я хочу, чтобы:

  • show id = 'PUBLI C' параграф, когда выбран Publi c, show id = 'INTERNAL', когда выбран внутренний. Et c. Et c.

  • Сохраните выделение и отправьте его для вставки в нужное место.

function AddValuesFromModal(selectValue) {
  var documentId = SpreadsheetApp.getActiveSpreadsheet().getId();
  console.log("Getting document log...");
 var infoSheet = SpreadsheetApp.getActive().getSheetByName('Information Control')
  console.log("Got document!");
  console.log("Selected value: " + selectValue);
  console.log("Start setting value....");
  infoSheet.getRange('C4').setValue(selectValue);
  console.log("Value has been set!");
}

function myFunk() {
  // Display a dialog box for each field you need information for.
  var documentProperties = PropertiesService.getDocumentProperties();
  var ui = SpreadsheetApp.getUi();
  //var response = ui.prompt('Enter Name', 'Enter owners person's name', ui.ButtonSet.OK);
  var nameResponse = ui.prompt("Enter the name of the document OWNER");
  var salesperson = nameResponse.getResponseText();
  var documentProperties = PropertiesService.getDocumentProperties();
  var infoSheet = SpreadsheetApp.getActive().getSheetByName('Information Control')
  var date = new Date();
  var htmlDlg = HtmlService.createHtmlOutputFromFile("HTML_myHtml")
    .setSandboxMode(HtmlService.SandboxMode.IFRAME)
    .setWidth(200)
    .setHeight(150);

  var modal = SpreadsheetApp.getUi();
  modal.showModalDialog(htmlDlg, "Document Classification");

  //Get Current Document ID
  var documentId = SpreadsheetApp.getActiveSpreadsheet().getId();
  console.log(documentId);

  //Get the document body as a variable
  var body = SpreadsheetApp.openById(documentId).getDataRange().getValues();
  console.log(body);

  //Insert the entries into the document
  infoSheet.getRange('C5').setValue(salesperson);
  infoSheet.getRange('C8').setValue(date);



}
<form id="docType">
<select id="selectDocumentType" name="documentClass" onchange='CheckSelect(this.value);'>
  <option value="PUBLIC">Public</option>
  <option value="INTERNAL">Internal</option>
  <option value="CONFIDENTIAL">Confidential</option>
  <option value="SECRET">Secret</option>
</select>       
<body>
<p align="justify" style="font-family:helvetica,garamond,serif;font-size:12px;font-style:regular;display:block;" class="light work"
         id="Choose" >Please Choose any one</p>
<p align="justify" style="font-family:helvetica,garamond,serif;font-size:12px;font-style:regular;display:none;" class="light work"
         id="PUBLIC" >Wizard Is working</p>
<p align="justify" style="font-family:helvetica,garamond,serif;font-size:12px;font-style:regular;display:none;" class="light work"
         id="INTERNAL" >Wizard Is Twerking</p>         
<p align="justify" style="font-family:helvetica,garamond,serif;font-size:12px;font-style:regular;display:none;" class="light work"
         id="CONFIDENTIAL" >Wizard Is Laughing</p>
<p align="justify" style="font-family:helvetica,garamond,serif;font-size:12px;font-style:regular;display:none;" class="light work"
         id="SECRET" >Wizard Is Eating</p>  
</body>
<hr/>
 <input type="button" onClick="formSubmit();" value="Submit" />
</form>
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js">
    </script>
    <script>

    function HideAll(val)
{
	var all = document.getElementsByClassName(val);
 	for(var i =0; i<all.length; i++)
 		all[i].style.display = 'none';
}
 function CheckSelect(val){
 
 	HideAll('work');
	document.getElementById(val).style.display='block';
 

}
    function formSubmit(){
    Submit();
    }
   
    
    function Submit() {
    var selectedValue = $('#selectDocumentType').val();
    console.log(selectedValue);
      google.script.run
        .withSuccessHandler(closeIt)
        .AddValuesFromModal(selectedValue);
      };
      
    function closeIt(){
      google.script.host.close();
    };
    

    </script>

1 Ответ

1 голос
/ 31 января 2020

Я обновил скрипт. «CheckColors» должен был быть «CheckSelect». Плохое управление версиями facepalm .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...