在js中可以引用jsp中的数据吗

 我来答
zwjtk
推荐于2017-10-11 · TA获得超过1741个赞
知道小有建树答主
回答量:300
采纳率:82%
帮助的人:205万
展开全部

你好,

通常来说是可以的。我给你列举两种方法,你根据你的情况选择适合你的吧。

方法一:将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);
    }
});

大致就这么多,希望能解决你的疑惑,如有疑问可追问~

sunguichun2003
2016-07-16 · TA获得超过752个赞
知道小有建树答主
回答量:754
采纳率:0%
帮助的人:507万
展开全部
很多人有这样一个误区,以为将js代码写在jsp文件中,就可以使用jsp页面里的数据。其实,js在运行时是永远不会在jsp里的,因为jsp只能在服务端运行,而js是在浏览器中解释运行的。实际上js只能操作html,jsp在服务器端被编译后返回到客户端浏览器的是html。这样说,不知你是否能理解。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhang87415756
2016-07-16 · TA获得超过667个赞
知道小有建树答主
回答量:902
采纳率:78%
帮助的人:172万
展开全部
可以的,用<%........%>就可以了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式