我想使用jsp表达式标签将java字符串变量传递给javascript函数参数。以下是我的jsp页面。

First.jsp



<!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">
        <title>Insert title here</title>
        <script>
            function stringGenerate(str){
                var x = document.getElementsByTagName("input");
                x[0].value = str;
            }
            function numberGenerate(num){
                var x = document.getElementsByTagName("input");
                x[1].value = num;
            }
        </script>
    </head>
    <body>
        <%
            String num ="1234567890";
            String str = "abcdefghij";
        %>

        <input type="text" name="string" readonly="readonly"/> &nbsp;&nbsp;
        <input type="text" name="number" readonly="readonly"/><br/><br/>

        <input type="button" value="String Generate" onclick= "stringGenerate(<%=str %>)" /> &nbsp;&nbsp;
        <input type="button" value="Number Generate" onclick= "numberGenerate(<%=num %>)" />
    </body>
</html>


当我单击具有“ Number Generate”值的按钮时,那么num变量值(1234567890)将显示在文本框上(名称=“ number”),但是当我单击具有值“ String Generate”的按钮时,则有在相应的文本框(名称=“ string”)上没有任何显示。这里num和str都是字符串类型的变量,但是为什么在文本框中仅显示num变量值,为什么不显示str变量值?

最佳答案

在HTML中使用字符串时,请尝试使用单引号'

完整代码:

07-24 09:50
查看更多