html文档中有一个hidden元素:
<input type="hidden" id="User" value="">
然后使用Javascript代码将一个Json对象保存到了hidden元素中:
var user = {Id:"01", Name: "LI Ming"}; var userNode = $("#User"); userNode.val(user);
接着在另一个地方读取:
var userNode = $("#User"); var id = userNode.Id; var name = userNode.Name;
结果变量id和name都是undefind,这样做为什么取不到值呢?谢谢。
貌似val()方法设置的值会自动转成字符串,所以本例中用userNode.val()返回的值会是"[object Object]",取不到id和name。
要设置对象的话,可以使用data()方法:
userNode.data(user);
取值用var user = userNode.data();
用.data方法我做到了,谢谢你。
userNode是jQuery对象。不是dom对象,你要用userNode.val()这样来得到值
var userNode = $("#User");
userNode.val(user); 这样赋值是没用的,你可把隐藏域取消,看看,到底是附上了什么值