obtener contextpath de javascript

Estoy tratando de limpiar una aplicación que está escrito en jsp servlet y javascript, jquery. Actualmente en el jsp, hay un montón de javascripts escrito. Estoy tratando de mover todos estos javascripts, aparte el archivo js. En el jsp, es lograr que los contextPath a través de javascript y, a continuación, hacer un poco de lógica el uso de este contextPath. Es posible conseguir el contexto de la ruta de acceso en el javascript ? También es utilizando algún código como este en jsp..¿Cómo puedo mover este código al archivo js?

HTML

 <input type="button" id="cntButton" value="CONTINUE" onclick="javascript: callTest('<%=request.getContextPath()%>/test1/test2/test3.do');"/>

 function callTest(pageURL){
 }

Si me muevo función callTest(pageURL) a un archivo javascript, ¿cómo puedo pasar el contextPath de la jsp?

Actualización 2

En el jsp,

<%
String firstName= "";

if (sampleBean.getName() != null) {
   firstName = sampleBean.getName();
}
%>
<script type="text/javascript">
 window.onload=loadVal;

function loadVal() {    
document.getElementById('business_name').value = "<%=firstName%>";
}
</script>

Necesito para mover este loadVal() a otro archivo js. Entonces, ¿cómo puedo pasar este «<%=nombre%>» que se obtiene de los granos?

InformationsquelleAutor user1049057 | 2013-11-18

1 Kommentar

  1. 5

    De escribir esto en su página JSP y se refieren en js. Va a trabajar.

    Asegúrese de agregar archivo js después de este código

    <script type="text/javascript">
    
    var contextPath='<%=request.getContextPath()%>';
    
    console.log(contextPath);
    
    
    </script>

    y

    <input type="button" id="cntButton" value="CONTINUE" 
           onclick="javascript:callTest(contextPath+'/test1/test2/test3.do')" />

    o pasar la url y añadir en la callTest función

    <input type="button" id="cntButton" value="CONTINUE" 
           onclick="javascript:callTest('/test1/test2/test3.do')" />

    main.js

    function callTest(pageURL)
    {
        var url=contextPath+pageURL; 
        //contextPath will be available, if defined in JSP
    }
    • Hola Murali..var contextPath ya se ha fijado en mi jsp.Yo sólo quería saber, si puedo mover mi función js que actualmente está en el mismo jsp en un archivo diferente, ¿habrá algún problema? puedo llamar como $(‘#cntButton).haga clic en(callTest(‘contextPath/test1 y test2/test3.hacer’)); y, a continuación, escribir la función callTestpageURL(){….}
    • Sin ti no puedo. llamar callTest('contextPath/test1/test2/test3.do') se pasa la dirección url con la cadena codificada. Su mejor llamar callTest(contextPath+'/test1/test2/test3.do') o prefijo contextPath dentro de la en función callTest
    • Ok..Para que yo pueda escribir $(‘#cntButton).haga clic en(callTest(contextPath+’/test1 y test2/test3.hacer’)); y, a continuación, escribir la función callTestpageURL(){….}
    • Sí, usted puede hacer de esa manera. No hay ningún problema. Asegúrese de haber definido la variable contextPath y se añade el .js archivos en la página, para resovling ámbito de las variables
    • Gracias Murali..Gracias por la solución..tengo otra consulta..he actualizado la pregunta..u puede por favor me ayude en esto también?

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea