Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

268
Visualizações
¿Cómo escribir el código JSP dentro de una declaración if de Javascript?

¡Espero que todos lo estén haciendo bien!

Me preguntaba si había una manera de escribir código JSP dentro de una declaración if de Javascript.

Por ejemplo, el método testVoid() de la clase funStuff.java cambia una cierta cadena en la clase y luego retK() devuelve esa cadena.

Sin embargo, el código JSP se ejecuta independientemente de la condición en la sentencia if. Vi otra publicación que decía que usar JSTL podría resolver esto, pero no estoy seguro de cómo escribir el segmento de código deseado usando JSTL.

¡Cualquier ayuda sería apreciada! ¡Gracias!

 <script> if (false) { <% funStuff.testVoid(); %> } console.log('<%= funStuff.retK() %>'); </script>

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Me preguntaba si había una manera de escribir código JSP dentro de una declaración if de Javascript.

No, esto no es posible.

En un nivel alto, una vez que la solicitud llega al servidor:

  1. El servidor ejecuta cualquier JSP y produce una nueva página. Después de este paso, todas las cosas de JSP están completas.
  2. El servidor envía esa página generada al cliente.
  3. El cliente (navegador) ve la página, tal vez ejecute Javascript (si está presente)

Su comportamiento deseado es:

  1. El código Javascript se ejecuta primero, verifica la condición de la declaración if , luego continúa con el cuerpo de la declaración if solo cuando la "condición" es verdadera.
  2. Código JSP dentro de Javascript if se ejecuta el bloque

El comportamiento real es:

  1. El código JSP se ejecuta primero, sin importar cuál sea la lógica de código prevista. Todos los JSP de toda la página se ejecutarán primero, siempre.
  2. La salida del código JSP se mezcla con el resto del HTML+Javascript estático en la aplicación.
  3. El navegador se involucra por primera vez, viendo la página recién creada: salida JSP + HTML estático y Javascript.
  4. El navegador ejecuta cualquier Javascript en la página.

Su ejemplo comienza así como JSP:

 <script> if (false) { <% funStuff.testVoid(); %> } console.log('<%= funStuff.retK() %>'); </script>

El servidor evaluará los bits JSP <% ... %> , por lo que, por ejemplo, suponga que:

  • funStuff.testVoid() devuelve "xyz"
  • funStuff.retK() devuelve "K"

entonces el servidor producirá esto:

 <script> if (false) { xyz } console.log('K'); </script>

El navegador recibirá el resultado como se indicó anteriormente, sin tener conocimiento de que "xyz" o "K" se generaron sobre la marcha en lugar de escribirse previamente en la página, o que los scriptlets JSP estuvieron involucrados de alguna manera.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda