java json类型的String在js中接受直接称json了?

问题描述

struts2class person{String name;String age;....set get}/////////////actionpublic String op (){private String orgTree;....set get....person ps = new person();ps.setname="dd";ps.setage ="12";JSONObject json = JSONObject.fromObject(ps);orgTree = json.toString();return "initsuccess"}/////////////jsfunction getinfo (){var pers = <%=request.getAttribute("orgTree")%>;window.alert(pers.name);}结果:dd// 得到的 pers 怎么就是 json了 不是String了?

解决方案

<%=request.getAttribute("orgTree")%> 是在服务器端输出字符串的,传输到浏览器后就没有双引号了,你右击查看下 变成了json字面量
解决方案二:
(1)直接用request.getAttribute()的结果:var str={name:'ok',age:'21'}直接是定义js中的json对象的语法了;(2)ajax调用后返回的json串,已经是js中的字符串了(这个应该决定于ajax请求响应机制,也有一些框架提供返回json类型的),所以要转换为json对像就使用eval了

时间: 2024-09-18 17:12:17

java json类型的String在js中接受直接称json了?的相关文章

asp.net后台cs中的JSON格式变量在前台Js中调用方法

代码如下: //后台cs代码: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class Login_jg : System.Web.UI.Page { protected void Page_Load(object sender, Ev

C#调用C++的dll,C#中的类型为string[],C++中的类型为char**,怎样把C#中的string[]传到C++中的char**?

问题描述 C#:[DllImport("CalIsolatedSpan.dll",CallingConvention=CallingConvention.Cdecl)]publicexternstaticvoidCalIsolatedSpan(stringisoSpan,stringguideWire,stringsplitNumber,string[]arrMetDetail,intnCount,outstringresult);C++:extern"C"{__d

asp.net后台cs中的JSON格式变量在前台Js中调用方法(前后台示例代码)_实用技巧

复制代码 代码如下: //后台cs代码: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class Login_jg : System.Web.UI.Page { protected void Page_Load(object sende

js中for in遍历json数据顺序各浏览器差异

了解W3C标准:     根据 ECMA-262(ECMAScript)第三版中描述,for-in 语句的属性遍历的顺序是由对象定义时属性的书写顺序决定的.     关于 ECMA-262(ECMAScript)第三版中 for-in 语句的更多信息,请参考 ECMA-262 3rd Edition 中 12.6.4 The for-in Statement.     在现有最新的 ECMA-262(ECMAScript)第五版规范中,对 for-in 语句的遍历机制又做了调整,属性遍历的顺序是

JQuery中ajax不能解析json

问题描述 JQuery中ajax不能解析json Action: @Controller @Scope("prototype") @Namespace("/") @ParentPackage("json-default") public class OaAction extends ActionSupport private String name; private String pass; private String msg; @Action

如何在JS中实现相互转换XML和JSON_jquery

开发中有时候会遇到XML和JSON相互转换,要求在JS中使用,网上找了好多,竟然每一个好用的,要么缺胳膊少腿,要么词不达意,太没天理了,果断自己实现一个. JSON与XML的区别比较 1.定义介绍 (1).XML定义 扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言. XML使用DTD(document type definition)文档类

js 中的switch表达式使用示例_javascript技巧

前言 switch 这种表达式在很多语言中都有,比如java, C等待, 使用switch比使用if else 来得方便,来得清晰. 使用语法很简单: 复制代码 代码如下: switch(n) { case 1: 执行代码块 1 break; case 2: 执行代码块 2 break; default: n 与 case 1 和 case 2 不同时执行的代码 } 各种语言的使用基本类似. 需要特别提出的时,在java 1.6 及以下版本, 变量(n)只能是整型.在java 7 之后支持Str

javascript-js中数组怎么变成json数据啊

问题描述 js中数组怎么变成json数据啊 想变成json格式的那种 比如{"data":"10628.00RBLWHI"}{"data":"15487.00ROSA"}这样的! 解决方案 遍历下就好了 var arr = ['1', '2', '3']; for (var i = 0; i < arr.length; i++) arr[i] = { data: arr[i] }; console.log(arr) 解决

浅谈js中StringBuffer类的实现方法及使用_javascript技巧

如下所示: <strong>JAVA中有一个StringBuffer类,js中却没有下面来自己实现一个简单的js的StringBuffer类.</strong> //创建一个StringBuffer类 ,此类有两个方法:一个是append方法一个是toString方法 function StringBuffer() { this.__strings__ = []; }; StringBuffer.prototype.append = function(str) { this.__s