Home > Web Front-end > JS Tutorial > Construct JSON format string using JavaScript

Construct JSON format string using JavaScript

高洛峰
Release: 2016-11-28 09:50:31
Original
1199 people have browsed it

If you are currently using Restful API and you need to build a json format string response through a web project, then this article will help you use javascript to create a json format string. This is very useful, we will convert the data object to json format through the jQuery plugin $.toJSON.

Build JSON format string using JavaScript

JavaScript code:

The javascript code is included here. $("#form").submit(function(){}- delete_button is the ID of the form tag. We call the value of the form input box through element.val(). The code is as follows:

<script src="jquery.min.js"></script>
<script src="jquery.json-2.2.js"></script>
<script src="GetPostAjax.js"></script>
<script type="text/javascript">
$(document).ready(function()
{
$("#form").submit(function(e){
e.preventDefault();
var username,email,password,gender;
username=$("#username").val();
email=$("#email").val();
password=$("#username").val();
gender=$("#gender").val();
 
if(username.length>0 && email.length>0 && password.length>0 &&gender.length>0)
{
//Creating Objects
var request = new Object();
var userDetails = new Object();
var user = new Object();
var websites=new Array();
 
user.name=username;
user.email=email;
user.password=password;
user.gender=gender;
 
//Array Push
if(website1.length>0)
websites.push(website1);
if(website2.length>0)
websites.push(website2);
if(website3.length>0)
websites.push(website3);
 
user.websites=websites;
 
userDetails.user = user;
request.userDetails = userDetails;
 
var jsonfy = $.toJSON(request);
// Encodes special characters
var encodedata = &#39;jsondata=&#39;+encodeURIComponent(jsonfy);
 
//Ajax Call
var url=&#39;website API URL&#39;;
post_data(url,encodedata, function(data) {
alert("Success");
});
 
}
 
});
 
});
</script">
Copy after login

HTML code:

<form method=&#39;post&#39; action=&#39;&#39; id=&#39;form&#39;>
Name
<input type=&#39;text&#39; name=&#39;username&#39; id=&#39;username&#39;  />
Email
<input type=&#39;text&#39; name=&#39;email&#39; id=&#39;email&#39; />
Password
<input type=&#39;text&#39; name=&#39;password&#39; id=&#39;password&#39; />
Gender
<select name=&#39;gender&#39; id=&#39;gender&#39;><option value=&#39;male&#39;>Male</option><option value=&#39;female&#39;>Female</option></select>
Websites
<input type=&#39;text&#39; id=&#39;website1&#39; />
<input type=&#39;text&#39; id=&#39;website2&#39; />
<input type=&#39;text&#39; id=&#39;website3&#39; />
<input type=&#39;submit&#39; id=&#39;submit&#39;/>
</form>
Copy after login

JSON output

{
"userDetails":{
"user":{
"name":"Srinivas Tamada",
"email":"srinivas@9lessons.info",
"password":"Srinivas Tamada",
"gender":"male",
"websites":["www.software8.co","www.heatpress123.net","www.0769zzw.com"]
}
}
}
JSON Encoded
Copy after login

Encode special characters, the following characters will be encoded:, / ? : @ & = + $ #

jsondata=%7B%22userDetails%22%3A%7B% 22user%22%3A%7B%22name%22%3A%22Srinivas%20Tamada%22%2C%22email%22%3A%22srinivas%409lessons.info%22%2C%22password%22%3A%22Srinivas%20Tamada%22% 2C%22gender%22%3A%22male%22%2C%22websites%22%3A%5B%22www.9lessons.info%22%2C%22www.egglabs.in%22%2C%22www.fglogin.com%22% 5D%7D%7D%7D

GetPostAjax.js

The ajax request method of jquery is defined here

function post_data(url,encodedata, success){
$.ajax({
type:"POST",
url:url,
data :encodedata,
dataType:"json",
restful:true,
contentType: &#39;application/json&#39;,
cache:false,
timeout:20000,
async:true,
beforeSend :function(data) { },
success:function(data){
success.call(this, data);
},
error:function(data){
alert("Error In Connecting");
}
});
}
Copy after login


.
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template