JavaScript怎么取得后台request数据?

有这样一个场景:后台java代码request.setAttribute("str");
众所周知,前端页面html可以显示str对应内容。
但是,前端javascript怎么获取这个内容?
(ps:有好几次都需JavaScript对这个内容进行处理一下,在显示出来...)

阅读 30.1k
5 个回答

js 没有办法直接获取java 中request 中的值,一般的方法是,input hidden 存储好,jquery 去获取。。
不要想着 直接 用js 获取 request、session。。等其中的值

简单,如果你的js代码是写在一个单独的js文件a.js里的,那就在引用a.js前,html页面里这样写:

<script>
    //如果str的内容是html,这里也许会有转义问题,用jsp的el表达式取出str
    var myData="{{str}}";
</script>
<script src="a.js"></script>

然后在a.js里面直接拿myData这个对象就行了

补充楼下,更新分界线

假如你使用jquery的话:思路很简单,将值噻入已有元素的属性中,然后获取即可

    <body data-cache="{{str}}">
        
        <script>
            var data=$("body").data("cache");
            
        </script>
    </body>

提供一种思路:
如果只是简单数据,直接打到页面上,通过js获取使用即可(不同数据也许处理方式不同);

下面举个数据为字符串的简单例子——
*这里的前提是你已在前端页面html可以输出对应内容;

<body>
    <span id="dataBox" style="display:none;">我是存数据的盒子,默认设置隐藏{即输出的对应内容}</span>
    <script type="text/javascript">
      var data = document.getElementById('dataBox').innerHTML;
      alert(data);
    </script>
</body>

以前用ajax, 现在流行fetch

先放在指定位置,将那个显示标签属性设置为隐藏,然后js获取里面的值进行处理,处理完成后将处理后的数据替换掉原先的数据,然后将那个标签显示属性设置为显示就好了啊

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题