1:
�Ƃ肠�����A�̊����Ă݂悤
�@���̃T���v���́u�Z���v�u����v�Ȃǂ̃����N�ɐG��ƁA���ѕ\����ւ��܂��B�������A��ւ��f�[�^�́A���̃y�[�W���ɂ͖����A���I�ɕʃt�@�C������ǂݍ��܂�Ă��܂��B�������AAjax�Ȃ̂ł��B
�@���̍�Ƃ́AAjax�ɂ�铮�I�ȃ��[�f�B���O�̗����̖��ɗ��Ǝv���܂��B�������A���ꂾ���ł͂Ȃ��A�ǂݍ��ރT�[�o�[���̃f�[�^��PHP��Perl/Java�Ȃǂ́u���I�ȏo�͂ɕς������ɋN���邱�Ɓv�ɂ��Ă̗����ɂ��𗧂Ǝv���܂��B
�@�܂�A�T�[�o�[����A���̂悤�ȁA�z���I�u�W�F�N�g�ȃf�[�^�̌`���i���Ƃ���JSON�j�ŏo�͂��A�N���C�A���g�Ƙb���ł���Ƃ������Ƃ́A���܂܂�PHP��Perl�AJava�Ȃǂōs���Ă����uHTML���v�Ȃǂ̏����̑唼���A�N���C�A���g���ɓn���Ă��A���v�Ƃ������ƂȂ̂ł��B
�@����́A�T�[�o�[�ɂƂ��āA���Ƃ��A�N���C�A���g1000�l�̂��߂ɍs���Ă����uHTML����Ƃ���̊J���v���Ӗ����邷�邾���ł͂Ȃ��A���M�f�[�^�̃T�C�Y������HTML��XML�ł͂Ȃ��u�f�[�^���̂��̂����Ɉ��k�v���Ă���܂��B
�@�����āA���܂ŁA�\�͂�]�点�āA�قƂ�ǖ��ʂɖ����Ă����A1000��̃N���C�A���gPC���A�T�[�o�[�ɑ҂�����邱�Ɩ����A����a���Ȃ��A������y�ʃf�[�^����HTML����u�Ń����_�����O���܂��B
�@���ꂪ�AAjax�̑�햡�̈�ł��傤�B
����u���E�U
| win |
mac |
linux |
| n7 | m1 | e6 | o7 | o8 |
n7 | m1 | e5 | s1 |
n7 | m1 | k3 |
| �� | �� | �� | �~ | �� |
�� | �� | �~ | �� |
�� | �� | �� |
�@�g�����\�[�X�́A���L�̒ʂ�ł��B
�yJavaScript���z
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta http-equiv="content-script-type" content="text/javascript">
<!-- �b��Ajax���C�u������ǂݍ��� -->
<script type = "text/javascript"
charset = "utf-8"
src = "./jslb_ajax03.js"></script>
<script language="JavaScript">
<!--
////
// ��M���ɋN������R�[���o�b�N��
//
// @sample onloaded(res)
// @param res ���X�|���X
//
function onloaded(res)
{
alert( "����M���܂��� : " + res.responseText )
}
////
// ���M�����p��
//
// @sample sendData(true)
// @param async ���Ȃ�true �����Ȃ�false
//
function sendData(async)
{
//���M
sendRequest( onloaded,'','GET','./about1.php',async,true )
}
//-->
</script>
<form name="test1">
<b>�ySync(����)�z</b>
<br>
<input type = "button"
value = "����"
onclick = "sendData(false)">
<br><br>
<b>�yAsync(��)�z</b>
<br>
<input type = "button"
value = "��"
onclick = "sendData(true)">
</form>
�@
�y����̎b��Ajax�p���C�u�����zjslb_ajax04.js
�O�p�����b�胉�C�u����jslb_ajax03.js��setRequestHeader()��open()�̑O�ɏ�����Ă������߁A
POST���ɓ���s�ǂ��N����܂����̂ŁAjslb_ajax04.js�ɏC�����܂����B
����Ajax���C�u�����́A����������C�����܂��̂ł��炩���߂��������������B
////
// �b���Ajax�p���C�u���� jslb_ajax04.js
// �ŐV���� http://
//
////
// XMLHttpRequest�I�u�W�F�N�g����
//
// @sample oj=createHttpRequest()
// @return XMLHttpRequest�I�u�W�F�N�g
//
function createHttpRequest()
{
if(window.ActiveXObject){
//Win e4,e5,e6�p
try {
return new ActiveXObject("Msxml2.XMLHTTP") ;
} catch (e) {
try {
return new ActiveXObject("Microsoft.XMLHTTP") ;
} catch (e2) {
return null ;
}
}
} else if(window.XMLHttpRequest){
//Win Mac Linux m1,f1,o8 Mac s1 Linux k3�p
return new XMLHttpRequest() ;
} else {
return null ;
}
}
////
// ���M��
//
// @sample sendRequest(onloaded,'&p;=1','POST','./about2.php',true,true)
// @param callback ��M���ɋN���������
// @param data ���M����f�[�^
// @param method "POST" or "GET"
// @param url���N�G�X�g����t�@�C����URL
// @param async ���Ȃ�true �����Ȃ�false
// @param sload �X�[�p�[���[�h true�ŋ����A�ȗ��܂���false�Ńf�t�H���g
//
function sendRequest(callback,data,method,url,async,sload)
{
//XMLHttpRequest�I�u�W�F�N�g����
var oj = createHttpRequest()
if( oj == null ) return null
//�������[�h�̐ݒ�
var sload = (!!sendRequest.arguments[5])?sload:false;
if(sload)url=url+"?t="+(new Date()).getTime()
//�u���E�U����
var ua = navigator.userAgent
var safari = ua.indexOf("Safari")!=-1
var konqueror = ua.indexOf("Konqueror")!=-1
var mozes = ((a=navigator.userAgent.split("Gecko/")[1] )
?a.split(" ")[0]:0) >= 20011128
//��M����
//opera��onreadystatechange�ɑ��d���X�o�O������̂�onload�����S
//Moz,FireFox��oj.readyState==3�ł���M����̂Œʏ��onload�����S
//Win ie�ł�onload�͓��삵�Ȃ�
//Konqueror��onload���s����
//�Q�lhttp://jsgt.org/ajax/ref/test/response/responsetext/try1.php
if(window.opera || safari || mozes){
oj.onload = function () { callback(oj) }
} else {
oj.onreadystatechange =function ()
{
if ( oj.readyState == 4 ){
callback(oj)
}
}
}
if(method == 'POST') {
//���̃��\�b�h��Win Opera8�ŃG���[�ɂȂ����̂ŕ���
if(!window.opera)
oj.setRequestHeader('Content-Type',
'application/x-www-form-urlencoded')
} else if(method == 'GET') {
url=url + encodeURI(data)
}
//open ���\�b�h
oj.open( method , url , async )
//send ���\�b�h
oj.send(data)
}
�@
�y�T�[�o�[���z
<?php
//4�b�X���[�v
sleep(4);
//�o�͂��镶���R�[�h��utf-8�ɃZ�b�g���āA�A�A
mb_http_output ( 'UTF-8' );
//�o��
echo " Woke up ! This is a response. " ;
?>
�@���̃T���v���ł́A�u�����v�{�^���������ƁA�������[�h�Ń��N�G�X�g�����M����A�u���v�{�^���������ƁA�����[�h�Ń��N�G�X�g�����M����܂��B
�@�T�[�o�[�ł́A4�b�ԃX���[�v(��~)�������ƁA���̃��N�G�X�g�ɑ��郌�X�|���X�Ƃ��āu Woke up ! This is a response. �v�Ƃ���������𑗏o����d�|���ɂȂ��Ă��܂��B
�@�������[�h�ł́A���N�G�X�g���M��A���X�|���X���A���Ă���܂ŁA�u���E�U�̓��b�N�����̂ʼn����ł��Ȃ��Ȃ�܂��B����ɑ��āA�����[�h�ł́A���N�G�X�g���M��A���X�|���X���A���Ă��Ȃ��Ă��A�����Ɏ��̍�ƂɂƂ肩���邱�Ƃ��ł��܂��B
�@���̃T�[�o�[�Ƃ̂���藬��ɂ��ẮA�O�X����Љ���AJesse James Garrett���ɂ�� ���(�a��)�́w�} 2: �`���I�� Web �A�v���P�[�V�����ɂ����铯���^�̂��Ƃ�i��j�ƁAAjax �A�v���P�[�V�����ɂ�������^�̂��Ƃ�i���j�x���Q�l�ɂȂ�ł��傤�B
�@�y����̎b��Ajax�p���C�u�����zjslb_ajax03.js�̒��̎�M�����Ȃǂɏ������܂�Ă���u���E�U����̍����́A
���X�|���X�̃^�C�~���O�ɂ��Ă�(�u���E�U���Ƃ̈Ⴂ�ɂ��Ă�)�����Ȃǂ̌��ʂɊ�Â��Ă��܂��B
�@���ɁA���N�G�X�g���M��A���b�N�����ɓ���ł���T���v���Ƃ��āA�O������p�����v���O���X�o�[��g�ݍ��킹�Ă݂܂��B
JavaScript�̃p���_�C���V�t�g�uAjax�v |
Ajax�͂��߂̈�� XMLHttpRequest |
�O��FRSS���[�_�[����� |