메뉴 건너뛰기

프로그램언어

2014.03.26 02:12

JSON and JavaScript usage

조회 수 19064 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
JSON
  1. JavaScript Object Notation
  2. A Simple format designed to exchange data between different programming language
JSON Objects
  1. Creating with JavaScript

var JSONstring = 
	{
	    "firstname": "Greg", 
	    "email": "greg@fake_email.com",
	    "hobby": 
	    [
		{
		    "hobbyName": "sport", 
		    "isHobby": "true"
		},
		{
			"hobbyName": "reading", 
			"isHobby": "true"
		},
		{
			"hobbyName": "music", 
			"isHobby": "false"
		}
	    ]
	};
  1. Accessing with JavaScript

JSONstring.hobby[1].isHobby; // true
Creating JavaScript Objects
  1. JavaScript object <-> JSON string : http://www.json.org/json2.js
  1. Example

	<html>
	<head><TITLE>ditio.net jSon Tutorial</TITLE>
	<script src="http://www.json.org/json2.js"></script>
	<script>
	// JavaScript source code will be here
	function validate()
	{
	    var p = document.forms['personal'];
	 
	    var JSONObject = new Object;
	    JSONObject.firstname = p['firstname'].value;
	    JSONObject.email = p['email'].value;
	    JSONObject.hobby = new Array;
	 
	    for(var i=0; i<3; i++)
	    {
		JSONObject.hobby[i] = new Object;
		JSONObject.hobby[i].hobbyName = p['hobby'][i].value;
		JSONObject.hobby[i].isHobby = p['hobby'][i].checked;
	    }
	 
	    JSONstring = JSON.stringify(JSONObject);
	    runAjax(JSONstring);
	 
	}
	</head>
	<body>
	<form name="personal" action="" method="POST">
	Name <input type="text" name="firstname"><br>
	Email <input type="text" name="email"><br>
	Hobby 
		<input type="checkbox" name="hobby" value="sport"> Sport
		<input type="checkbox" name="hobby" value="reading"> Reading
		<input type="checkbox" name="hobby" value="music"> Music
	<input type="button" name="valid" value="Validate" onclick="validate()">
	</form>
	</body>
	</html>
Sending JSON object to PHP with AJAX
  1. Example

var request;
function runAjax(JSONstring)
{
    // function returns "AJAX" object, depending on web browser
    // this is not native JS function!
    request = getHTTPObject();
    request.onreadystatechange = sendData;
    request.open("GET", "parser.php?json="+JSONstring, true);
    request.send(null);
}
	 
// function is executed when var request state changes
function sendData()
{
    // if request object received response
    if(request.readyState == 4)
    {
	// parser.php response
	var JSONtext = request.responseText;
	// convert received string to JavaScript object
	var JSONobject = JSON.parse(JSONtext);
	 
	// notice how variables are used
	var msg = "Number of errors: "+JSONobject.errorsNum+
			"
- "+JSONobject.error[0]+
			"
- "+JSONobject.error[1];

	alert(msg);
    }
}

List of Articles
번호 제목 날짜 조회 수
40 gd_info 사용 가능한 GD 라이브러리에 대한 정보를 배열로 반환 2016.12.23 17989
39 gcm 푸시 알림 php 테스트 2018.07.19 5582
38 FPDF - PHP로 PDF 만들기 2014.02.27 21075
37 fopen 파일 열기 2015.04.14 20297
36 fileatime 파일에 최종적으로 접근한 시간을 반환 2016.12.23 18117
35 fcm 푸시 알림 php 테스트 2018.07.19 6044
34 explode - 문자열 나눔 2016.12.23 19943
33 ereg(), eregi(), ereg_replace(), eregi_replace(), split() 대체 2023.01.12 227
32 Drag/Drop HTML elements 2014.03.26 19535
31 dddotag - 허용하지 않는 태그 걸러내기 2019.01.16 1850
30 DB상의 많은 파일을 한꺼번에 다운받기 2014.02.27 28332
29 DB 연동 4단 셀렉트 박스 2018.09.28 6085
28 DB 내용을 화면에 출력(이중 for 문) 2015.04.14 21246
27 DAUM 지도 API 좌표→주소(주소->좌표) 변환 2020.10.05 431
26 date() 함수의 출력 형식 2021.03.26 241
25 current() next() key() 그외 배열관련 함수 2021.03.26 253
24 curl을 이용하여 post, get 방식 으로 데이터 전송하기 2023.01.12 333
23 cUrl를 이용한 json 데이타 주고 받기 2020.09.28 1253
22 csv파일 다루기. fputcsv(), fgetcsv() 2021.03.26 558
21 CodeIgniter에서 PHPExcel 사용하기 file 2017.03.06 20289
Board Pagination Prev 1 ... 8 9 10 11 12 13 14 15 16 17 Next
/ 17

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved