0

我们可以在jsp页面中用java初始化JavaScript变量吗?喜欢,

<script type="text/javascript">
var refreshId = setInterval(function() {
    var nv=<% out.print(num_voted); %>;
    var tv=<%out.print(totalvoted); %>;
    var m=<% out.print(month);%>;
    var y=<% out.print(year);%>;
    alert("refreshed");
    $('#alertmessagebox').text("Total members voted "+nv+" out of "+tv+" for "+m+" " +y);
}, 9000);
$.ajaxSetup({ cache: false });
 </script>

代码未按预期工作。:(

有没有办法做到这一点?为什么不可能通过这种方式?我们需要创建标题来做到这一点吗?

4

1 回答 1

1

这是在 JSP 中设置 Javascript 变量的示例。

<head>
<%
    String numVotedStr = request.getParameter("numvoted");
    int numVoted = 0;
    if (numVotedStr != null) {
        numVoted = Integer.parseInt(numVotedStr);
    }
%>
<script type="text/javascript">
    function setInterval() {
        alert("hello " + <%= numVoted %>);
    }
</script>
</head>

<body>
<form>
    <input type="button" onclick="setInterval()" value="Press Me"/>
</form>
</body>
</html>

要进行测试,请使用此 URL 的适当版本:

http://localhost:8080/sandbox/example.jsp?numvoted=99

这将在 HTTP 请求上弹出一个带有“numvoted”整数值的警报框,方法是生成一个 HTML 页面,其中该值在 Javascript 中初始化。(代码应该至少有一个parseInt()调用的 try-catch,但这只是一个简单的例子。)

于 2012-09-29T18:48:16.847 回答