从&lt; %%&gt;传递值到<script>(JSP)

时间:2018-05-25 06:01:03

标签: java html jsp

我有以下代码,我想知道是否有一种方法可以在标记部分使用变量“prov”

&#xA;&#xA;
 &lt ;%&#xA;字符串提供;&#xA; if(request.getParameter(“btnBusProv”)!= null)&#xA; {&#XA; prov = request.getParameter(“cbProv”);&#xA; out.println(“Nombre del proveedor:”);&#xA;通过out.println(省);&#XA; }&#XA; %GT;&#XA; &LT;脚本&GT;&#XA; function MostrarNombres()&#xA; {&#XA; document.getElementById(“txtRUC”)。value = prov;&#xA; document.getElementById(“txtFec”)。value = prov;&#xA; document.getElementById(“txtDIR”)。value = prov;&#xA; }&#XA; &LT; /脚本&GT;&#XA;  
&#XA;

3 个答案:

答案 0 :(得分:2)

您可以将隐藏变量用于此目的,例如:

 <input type="hidden" id="prov" value='<%=request.getParameter("cbProv") %>' >

然后,在脚本块中:

var obj = document.getElementById("prov");

答案 1 :(得分:0)

当您需要的只是请求参数的值时,不需要使用隐藏的输入元素。使用${param.cbProv}访问该值而不使用scriptlet。

<script>
    var prov;
    <c:if test="${not empty param.btnBusProv}">
        prov = '${param.cbProv}';
    </c:if>

    function MostrarNombres()
    {
        document.getElementById("txtRUC").value = prov;
        document.getElementById("txtFec").value = prov;
        document.getElementById("txtDIR").value = prov;
    }
</script>

答案 2 :(得分:-1)

您可以使用JSP表达式:

<script>
    function MostrarNombres()
    {
        document.getElementById("txtRUC").value = <%=prov%>;
        document.getElementById("txtFec").value = <%=prov%>;
        document.getElementById("txtDIR").value = <%=prov%>;
    }
</script>

或者更简单的方法是直接在隐藏的html dom元素中设置并使用它:

<input id='prov' type="hidden" value='<%=request.getParameter("cbProv")%>'>

<script>
    function MostrarNombres()
    {
        var prov = document.getElementById('prov').value;
        document.getElementById("txtRUC").value = prov;
        document.getElementById("txtFec").value = prov;
        document.getElementById("txtDIR").value = prov;
    }
</script>