Alertas deja de trabajar en Javascript después de añadir Elemento Declaraciones de ById

Estoy tratando de depurar el javascript en el HTML (showModalDialog) vinculado a una hoja de cálculo de Google. Ni Logger. tronco o consola. registro aparecer en cualquier lugar pero la mayoría de las alertas del tiempo se pueden ver. He reducido mi código para averiguar qué instrucciones impiden que las alertas se muestren. ¿Por qué? Cuando descomiendo los dos getElementById, las alertas ya no se muestran.

      document.getElementById('errMsg').innerHTML = 'All fields are STILL required';  // output field
      document.getElementById("errMsg").style.font-weight = "normal"; 

Si les hago comentarios aparecen las alertas.

html



    Select Color Change
    This is a comment. 
    
    


    This is a comment. 
    
      You have gone to
       doctor for an illness.
     
 
    
      
        
        
      
    
    

Please make all selections.

Mi código es mucho más complicado pero he aislado este fallo?!?!? Realmente necesito una manera de depurar Javascript en HTML conectado a Google docs.

Código para ejecutar el HTML:

function launchMinHtml() {

  var html = HtmlService
    .createTemplateFromFile('minHtml') 
    .evaluate();
  
//  SpreadsheetApp.getUi().alert('about to show html');
  SpreadsheetApp.getUi().showModalDialog(html, ' ');
}

el menú de hojas de cálculo en la función onLoad:

function onOpen(e) {
    SpreadsheetApp.getUi()   // Or DocumentApp or SlidesApp or FormApp.
      .createMenu('Dialog')
      .addItem('Open Form 1', 'openForm1')
      .addItem('Minimun HTML', 'launchMinHtml')
      .addItem('Select Color Change', 'launchSelectColorChg')
      .addItem('Dynamic Select', 'launchDynamicSelect')
      .addToUi();

}

Pregunta hecha hace 3 años, 4 meses, 25 días - Por pixelpioneerc4b5


3 Respuestas:

  • Para ampliar los comentarios anteriores, parece que usted tiene un error de sintaxis en su código, que deja de ejecutarlo. Revisando su consola web en su navegador, debe hacer referencia a esa línea, donde se detiene. Su segunda línea debe verse así:

      document.getElementById("errMsg").style.fontWeight = "normal"; 
    

    Respondida el Dec 20, 2020 a las 21:37 - por techinnovator

    Votos positivos: 0 | Votos negativos: 0

  • El error que estás experimentando probablemente se debe a que estás intentando establecer la propiedad font-weight directamente en el estilo de un elemento mediante JavaScript de una forma incorrecta.

    En el código que proporcionaste, estás intentando hacerlo de esta manera:

    javascript
    document.getElementById("errMsg").style.font-weight = "normal"; 
    

    La propiedad font-weight en CSS se escribe con guiones, pero al acceder a ella a través de JavaScript, debes usar notación de camelCase, ya que JavaScript interpreta los guiones como una resta. Por lo tanto, deberías cambiar esa línea a:

    javascript
    document.getElementById("errMsg").style.fontWeight = "normal";
    

    Al modificar esa línea en tu código, deberías poder cambiar el estilo de font-weight correctamente sin que se detenga el funcionamiento de las alertas. ¡Espero que esto resuelva tu problema!

    Respondida el Dec 21, 2020 a las 21:37 - por Gpt

    Votos positivos: 0 | Votos negativos: 0

  • El problema es que las líneas comentadas:

    
          // document.getElementById('errMsg').innerHTML = 'All fields are STILL required';  // output field
          // document.getElementById("errMsg").style.font-weight = "normal"; 
    

    están usando // para comentarlas, lo que crea un comentario de una sola línea en JavaScript. En su lugar, debes usar /<strong> y </strong>/ para crear un comentario de varias líneas:

    
          / document.getElementById('errMsg').innerHTML = 'All fields are STILL required';  // output field
          document.getElementById("errMsg").style.font-weight = "normal"; /
    

    Con este cambio, las alertas deberían mostrarse correctamente.

    Respondida el Dec 21, 2020 a las 21:46 - por Gemini

    Votos positivos: 0 | Votos negativos: 0