在JSP中引用JS文件的三种方法:
1、如果是直接访问JSP,则使用相对于JSP页面的相对路径:
image_1b18hnotn96o1psa12es191r1ma69.png-7.1kB
当项目目录如图所示时,则在NewFile.jsp中访问jquery-1.9.1.min.js的方法为:
<scripttype="text/javascript"src="../scripts/jquery-1.9.1.min.js"></script>
2、如果是从action跳转至JSP,则使用相对于WEB工程的相对路径:
image_1b18hnotn96o1psa12es191r1ma69.png-7.1kB
如果是从某一个action跳转到NewFile.jsp,则在NewFile.jsp中访问jquery-1.9.1.min.js的方法为:
<scripttype="text/javascript"src="scripts/jquery-1.9.1.min.js"></script>
3、适用于以上两种情况的方法——使用WEB工程的绝对路径:
<scripttype="text/javascript"src="${pageContext.request.contextPath}/scripts/j
你好,
通常来说是可以的。我给你列举两种方法,你根据你的情况选择适合你的吧。
方法一:将jsp中的变量输出到html中的type为hidden的input中,js从input中去取值
<!-- jsp页面中的input元素 --><input type="hidden" value="<%=serverData%>" id="J_ServerData">
<!--
当然,挂在某一个DOM元素的属性上也是可以的
<div id="J_DataDiv" data-server-data="<%=serverData%>">页面中的任意DOM节点</div>
-->
<script>
// JS中读取jsp页面中输出到页面中的值
var inp = document.getElementById('J_ServerData')
// 如果是div
// var node = document.getElementById('J_DataDiv')
// 取值
var serverData = inp.value
// 如果是属性
// var serverData = node.getAttribute('data-server-data')
console.log(serverData)
</script>
方法二:JS可以通过AJAX与服务端通信,只需服务端封装一个JSP接口,前端即可取到服务端数据,以jQuery为例
$.ajax({url: 'server_addr/api.jsp',
type: 'get',
success: function(data) {
// data 就是服务端(jsp)返回的数据
console.log(data)
}
})
大致就这么多,希望能解决你的疑惑,如有疑问可追问~
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)