0

我需要在我的jsp中传递一些var ...我从servlet获得的值到我在javascript中的funciton ...这可能吗?我过去了我的代码:

            <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
          <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
           <html>
            <head>
           <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
             <script type="text/javascript" src="js/lib/ext-all.js"></script>
            <link rel="stylesheet" type="text/css" href="resources/css/ext-all-gray.css"/>
            <link rel="stylesheet" type="text/css" href="resources/css/EstiloPrincipal.css"/>
            <title>Tipo Papel</title>
             <script>


            Ext.require([
'Ext.form.*',
'Ext.form.field.File',
'Ext.layout.container.Column',
'Ext.window.MessageBox',
'Ext.fx.target.Element',
'Ext.panel.*',
'Ext.toolbar.*',
'Ext.button.*',
'Ext.container.ButtonGroup',
'Ext.layout.container.Table',
'Ext.tip.QuickTipManager'
   ]);

     Ext.onReady(function() {
Ext.QuickTips.init();


    var modificarRegistro = function(){



    Ext.Ajax.request({
        url: 'http://localhost:8080/MyMaver/ServletTipoPapel',
        //url: 'http://lnxntf05:8080/MyMaver/ServletTipoPapel',
        method: 'POST',
        params: {




            Funcionalidad: 'Modificar',
            DPTipoPapel: Ext.getCmp('DPTipoPapel').getValue(),
            DPIndicadorSoD: Ext.getCmp('DPIndicadorSoD').getValue(),
            DPCaratula: Ext.getCmp('DPCaratula').getValue(),
            DPFinicial:Ext.getCmp('DPFinicial').getValue(),
            DPVinicial:Ext.getCmp('DPVinicial').getValue(),
            DPFfinal:Ext.getCmp('DPFfinal').getValue(),
            DPVfinal: Ext.getCmp('DPVfinal').getValue(),
            DPVersCaratula: Ext.getCmp('DPVersCaratula').getValue(),
            DPSpool: Ext.getCmp('DPSpool').getValue(),
            DPTamPapel: Ext.getCmp('DPTamPapel').getValue(),
            DPNumOptimo: Ext.getCmp('DPNumOptimo').getValue(),
            DPFormularioCaratula: Ext.getCmp('DPFormularioCaratula').getValue(),
            DPDescripcion: Ext.getCmp('DPDescripcion').getValue(),
            DPTipoTrabajo: Ext.getCmp('DPTipoTrabajo').getValue(),

            Entorno:  Ext.getCmp('Entorno').getValue()
        },
        success: function(response){

            var text = response.responseText;
            alert("ha modificado un registro de la tabla tipo papel");
            // process server response here
            respuestaModificacion(text);

        },
        failure:  function (){
            alert("Desde failure");
        },
        exception: function (){
            alert("Desde exception");
        }
    });
};

  var top = Ext.widget({
    xtype: 'form',
    id: 'multiColumnForm',
    collapsible: true,
    frame: true,
    //renderer:contenedor,
    title: 'TIPOS DE PAPEL - MANTENIMIENTO',
    bodyPadding: '0 0 0',
    width: '80%',
    //height: 800,
    fieldDefaults: {
        labelAlign: 'side',
        msgTarget: 'side'
    },
    items: [cabeceraPrueba,customGroup,
    simpleCombo,mensajesPrueba],


    buttons: [{
        text: 'Altas',
        id:'botonAlta',
        handler: function() {
            altaTipoPapel();
        }
    },{
        text: 'Alta Masiva',
        id: 'botonAltaMasiva',
        hidden: true,
        handler: function() {
            this.up('form').getForm().isValid();
        }
    },{
        text: 'Consulta',
        disabled: true,
        id:'botonConsulta',
        handler: function() {

            consultarTipoPapel();
        }
    },{
        text: 'Modificar',
        disabled: true,
        id:'botonModificar',
        handler: function() {
            modificarRegistro();
        }
    },{
          text: 'Bajas',
          disabled: true,
          id:'botonBaja',
          handler: function() {
            bajaTipoPapel();
        }
    },{
        text: 'Limpiar',
        handler: function() {
            limpiarCampos();
        }
    },{
        text: 'Histórico',
        hidden: true,
        handler: function() {
            this.up('form').getForm().reset();
        }
    }]
});

top.render(document.body);

});
  </head>
  <body leftmargin="3" topmargin="3" marginwidth="0" marginheight="0"
bottommargin="0">
    <form name="form1" action="/MyMaver/GestorPeticiones" method="post"  enctype="multipart/form-data">
        <div id="campos"></div>
    </form>
<%String name = (String)request.getAttribute("usuario"); %>
<%= name%>
    </body>
    </html>

我想将 var "usuario" 传递给我的脚本代码....这可能吗?

4

2 回答 2

1

JSP 生成 HTML 代码。JS 是生成的 HTML 代码的一部分。只需编写 JSP 代码,使其准确生成所需的 HTML/JS 代码。

例如,

<script>
    var usuario = "${usuario}";
</script>

现在在浏览器中打开 JSP 页面并右键单击,查看源代码,并确认 JSP 是否已在生成的结果中正确内联 EL 变量,使得生成的 JavaScript 代码语法有效(即引号、分号等):

<script>
    var usuario = "Some User Name";
</script>

注意:不要忘记将JS 转义考虑在内,例如自定义 EL 函数。如果用户名包含双引号,否则它将中断。另请注意,scriptlet <% %>是一种老式的 JSP 编写方式,十多年来一直不鼓励使用。只需使用上面演示的EL 。打印在页面、请求、会话和应用程序范围中找到的第${foo}一个非空属性。"foo"

于 2013-06-24T11:13:48.423 回答
0

是的...

<%String name = (String)request.getAttribute("usuario"); %>
var usuario = '<%=name%>';
于 2013-06-24T11:12:46.607 回答