javascript - 如何将 JavaScript 代码与 Servlet 一起移动到外部文件中?

标签 javascript jsp servlets

我有一些带有 Servlet 代码的 JavaScript 代码,我想将它们(之间)全部移动到外部 js 文件,但它不起作用,我该怎么办?如果只有部分 JavaScript 可以移动到外部文件,如何修改我的代码。

<script language="JavaScript" type="text/JavaScript">
var sel = document.getElementById('sel');
var selList = [];
<%
String key = "";
String text = "";

for(int i = 0; i < master.size(); i++) {
    Map option = (Map) master.get(i);
    key = (String) option.get("Code");
    text = key + " " + (String) option.get("NAME");
%>
    selList.push({
        key: "<%=key%>",
        text: "<%=text%>"
    }); 
<%
}
%>
</script>

最佳答案

这里有两个选项:

1-不使用ajax

外部.js

var images;

function renderImages(){
    //do things for showing images here.
    //images variable has images data as JSON (i suggest you this way) so you can easily iterate over list and render it.
}

jsp

<html>
<head>
<script type="text/javascript" src="external.js"></script>
<script>
    images = "<%=request.getAttribute("imageDataAsJSON")%>"; //here i assume you populate request variable with your image data in JSON format. Be careful about parse errors due to ' and ".
</script>

</head>
<body>
<script>
 renderImages();
</script>
</body>
</html>

2-通过使用ajax(您可以将客户端逻辑分离到外部js代码中,并通过对服务器端进行ajax调用来将数据填充到其中。)

外部.js

function renderImages(){
    //do ajax to your servlet which returns image data as JSON.
    //iterate over image data and render your html elements accordingly.
}

jsp

<html>
<head>
<script type="text/javascript" src="external.js"></script>
</head>
<body>
</body>
</html>

关于javascript - 如何将 JavaScript 代码与 Servlet 一起移动到外部文件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44300423/

相关文章:

java - 显示 servlet 嵌入的 pdf 文件

java - Web 应用程序工作流程中的 Controller Servlet

javascript - javascript 中的 Java CometD Jetty 协议(protocol)等效项

javascript - 即使在点击处理程序上,Html5 音频也不会加载/播放

java - 如何使用JSP变量检查条件?

eclipse - Servlet post 请求记录到 Eclipse 控制台

java - BufferingResponseListener 和 getContentAsString 追加之前获取的内容

javascript - 下载由 Javascript 生成的动态创建的 CSS 文件

javascript - 如何从 jQ 的 AJAX 请求内部运行本地函数?

java - 如何在 Spring MVC 中处理 URL 和 @RequestMapping