JSP 对象中的 JavaScript 变量

Javascript variable inside JSP object

本文关键字:JavaScript 变量 对象 JSP      更新时间:2023-09-26
$('area').on('mouseover', function() {
    var territory = $(this).attr('name');
    var territoryString = new String(territory);
    var owner = <%game.getTerritory(territoryString).getOwner().getName(); %>;
    $('#selection').html(territory);
});
});

正在尝试从我存储为 JSP 对象的游戏对象中获取数据。我尝试获取的领土位于游戏对象中作为领土列表。有没有办法将 javascript 变量作为参数传入?还是我需要创建一个带有区域列表的 JSP 对象?

你不能

直接。您有两种选择:要么在第一次加载页面时加载客户端剥离中的所有区域名称,然后使用此客户端对象向区域请求特定 territoryString,如下所示:

var Territories = <% Print a json string map with the territories info with the server side code %>
$('area').on('mouseover', function() {
     .....
     var owner = Territories[territoryString].name;
      ....

此方法的问题在于,如果服务器数据更改,则客户端对象将无法实现。

另一种方法是在点击函数中使用 ajax 调用,然后将结果加载到 JavaScript 变量中。

如果你真的想要实时的东西,有一些商业框架可以在服务器和客户端变量之间进行自动同步,例如:"pusher">