码迷,mamicode.com
首页 > Web开发 > 详细

字符串json对象传值

时间:2016-01-17 20:14:15      阅读:127      评论:0      收藏:0      [点我收藏+]

标签:

  之前传json的时候,用到的都是ajax,所以有些知识盲点就这么容易的避过了。最近项目中需要用到表单传一个json对象,踩了一个小坑,怪只怪在自己看书的时候太不仔细,下边来做个总结。

demo1.html:

 1 <body>
 2     <form action="eg.php" method="post" name="fom">
 3         <input type="text" name="txt" />
 4         <input type="submit" />
 5     </form>
 6     <script src="jquery-1.11.3.min.js"></script>
 7     <script type="text/javascript">
 8     
 9           //创建json对象     
10         var person = {
11             "name": "huyawei",
12             "sex" : "male"
13         }
14         $("[type=submit]").click(function(){
15         //将文本框的值设为这个json对象
16             $("[type=text]").val(person);
17         });
18         
19     </script>
20 </body>

 

建一个php文件来接收传过去的值 

<?php
    var_dump(json_decode($_POST[‘txt‘])->name);
?>

提交表单

技术分享

我们会看到这样一个结果 null;

仔细查了下,前台传json和数组到后台时,需要转化为字符串形式。所以,我们只需要把上面的html文件的第16行改为:

$("[type=text]").val(JSON.stringify(person))

通过json对象的stringify函数,将json对象转化为字符串形式,这样就ok了,再来看下浏览器中的结果

技术分享

因为之前遇到json一般都是用的ajax,而ajax会自动把你的值转化为字符串格式传过去,所以就不需要在自己去转化了。

有什么自己理解不到位的地方,还望大家指出,谢谢。

 

  

字符串json对象传值

标签:

原文地址:http://www.cnblogs.com/huyawei/p/5137676.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!