С±àdz̸Struts2ÖÐʹÓÃJSON²å¼þʵÏÖAjax
½ñÌìС±àºÍ´ó¼Ò·ÖÏíµÄÊÇJSON²å¼þʵÏÖAjax£¬Ï£Íû¶Ô´ó¼ÒÓÐËù°ïÖú¡£
1£¬JSON»ù´¡ÖªÊ¶
JSON²å¼þÊÇStruts2µÄAjax²å¼þ£¬Í¨¹ýÀûÓÃJSON²å¼þ£¬ÔÊÐí¿ª·¢ÕßÒԷdz£Áé»î¼òµ¥µÄ·½Ê½À´¿ª·¢AjaxÓ¦Óá£
JSONµÄÈ«³ÆÊÇJavaSrcipt Object Notation,¼´JavaScript¶ÔÏó·ûºÅ,ËüÊÇÒ»ÖÖÇáÁ¿¼¶µÄÊý¾Ý½»»»¸ñʽ.JSONµÄÊý¾Ý¸ñʽ¼ÈÊʺÏÈËÀàµÄ¶Áд,Ò²ÊʺϼÆËã»úµÄ½âÎöºÍÉú³É.×îÔçµÄʱºò,JSONÊÇJavaScriptÓïÑÔµÄÊý¾Ý½»»»¸ñʽ,ºóÀ´·¢Õ¹³ÉÒ»ÖÖÓïÑÔÎ޹صÄÊý¾Ý½»»»¸ñʽ,ÕâµãÀàËÆÓÚXML.
JSONÌṩÁ˶àÖÖÓïÑÔÖ®¼äÍê³ÉÊý¾Ý½»»»µÄÄÜÁ¦,Òò´Ë,JSONÒ²ÊÇÒ»Öַdz£ÀíÏëµÄÊý¾Ý½»»»¸ñʽ,JSONÖ÷ÒªÓÐÈçÏÂÁ½ÖÖÊý¾Ý½á¹¹:
1,ÓÉkey-value¶Ô×é³ÉµÄÊý¾Ý½á¹¹,ÕâÖÖÊý¾Ý½á¹¹ÔÚ²»Í¬µÄÓïÑÔÖÐ,Óв»ÔðÂîµÄʵÏÖ.ÀýÈç:ÔÚJavaScriptÖÐÊÇÒ»¸ö¶ÔÏó,ÔÚJavaÖÐÒ»ÖÖMap½á¹¹,ÔÚCÓïÑÔÖÐ,ÔòÊÇÒ»¸östruct.
2,ÓÐÐò¼¯ºÏ.ÕâÖÖÊý¾Ý½á¹¹ÔÚ²»Í¬ÓïÑÔÖÐ,¿ÉÄÜÓÐlist,vector,Êý×é,ÐòÁеÈʵÏÖ.
ÉÏÃæµÄÁ½ÖÖÊý¾Ý½á¹¹,ÔÚ²»Í¬µÄÓïÑÔÖж¼ÓжÔÓ¦µÄʵÏÖ,Òò´Ë,ÕâÖÖ¼ò±ãµÄÊý¾Ý±íʾ·½Ê½ÍêÈ«¿ÉÒÔʵÏÖ¿çÓïÑÔ.Òò´Ë¿ÉÒÔ×÷Ϊ³ÌÐòÉè¼ÆÓïÑÔÖÐͨÓõÄÊý¾Ý½»»»¸ñʽ.
ÔÚJavaScriptÖÐÖ÷ÒªÓÐÁ½ÖÖJSONµÄÓï·¨:Ò»ÊÇÓÃÓÚ´´½¨¶ÔÏó;¶þÊÇÓÃÓÚ´´½¨Êý×é.
1£¬Ê¹ÓÃJSONÓï·¨´´½¨¶ÔÏó
JSONÓï·¨´´½¨¶ÔÏóÊÇÒ»ÖÖ¸ü¼òµ¥µÄ·½Ê½£¬Ê¹ÓÃJSONÓï·¨¿É±ÜÃâÊéдº¯Êý£¬Ò²¿É±ÜÃâʹÓÃnew¹Ø¼ü×Ö£¬¶øÊÇÖ±½Ó»ñȡһ¸öJavaScript¶ÔÏó¡£JavaScriptÖд´½¨¶ÔÏóµÄÓï·¨ÈçÏ£º
//¶¨ÒåÒ»¸öº¯Êý×÷Ϊ¹¹ÔìÆ÷
function Person(name, sex){
this.name=name;
this.sex=sex;
}
//´´½¨Ò»¸öPersonʵÀý
var p = new Person('annlee','male');
//Êä³öPersonʵÀý
alert(p.name);
ʹÓÃJSONµÄÓï·¨ÈçÏ£º
var p = {
"name":'annlee',"sex":'male'
};
alert(p);
ÕâÖÖÓï·¨¾ÍÊÇÒ»ÖÖJSONÓï·¨£¬ÏÔÈ»£¬Ê¹ÓÃJSONÓï·¨´´½¨¶ÔÏó¸ü¼Ó¼ò½Ý£¬·½±ã¡£ËüµÄvalue²»½ö½ö¿ÉÒÔÊÇÆÕͨµÄ×Ö·û´®£¬»¹¿ÉÒÔÊÇÈκλù±¾Êý¾ÝÀàÐÍ£¬º¯Êý£¬Êý×飬ÁíÒ»¸öJSON¶ÔÏóµÈµÈ¡£
2£¬Ê¹ÓÃJSONÓï·¨´´½¨Êý×é
JavaScript´´½¨Êý×éµÄÓï·¨ÈçÏ£º
//´´½¨Êý×é¶ÔÏó
var a = new Array();
//ΪÊý×éÔªËØ¸³Öµ
a[0]='annlee';
a[1]='male';
alert(a);
»òÕßÓÃÏÂÃæµÄ·½·¨£º
//´´½¨Êý×é¶ÔÏó
var a = new Array('annlee','male');
alert(a);
ʹÓÃJSONÓï·¨´´½¨Êý×éÓÃÈçÏ·½·¨£º
//´´½¨Êý×é¶ÔÏó
var a = ['an
Ïà¹ØÎĵµ£º
¼òµ¥µÄÃèÊöÏ DWR ÅäÖ㨱£ÃÜÐÒ飬Ôڴ˲»¹«¿ªÏîÄ¿Ãû³Æ£¬ÏîÄ¿Ïà¹ØÃû³ÆÈ«²¿ÓÃXXXX´úÌæ£©
Ê×ÏÈ ·Ï»°²»ËµÁË ´ó¼Ò¶¼Ó¦¸ÃÀí½âDWRµÄÓô¦ ²»¶®µÄÈ¥°Ù¶È
±ØÒª°ü DWR.JAR ¹Ù·½ÏÂÔØµØÖ·http://directwebremoting.org/dwr/download.html
Õâ¸öÏîÄ¿ÊÇÓÉ SSH+dwr+jquery+sitemesh+freemarker
WEB.XML
<!-- dwr -->
<serv ......
×î½üÔÚ¸ºÔð×öÍøÕ¾µÄºǫ́¹ÜÀí²¿·Ö£¬¾õµÃjqueryµÄsortable×ö¶¯Ì¬¹¤¾ßÀ¸ºÜʵÓÃ,µ«ÍøÉϺܶ඼ֻ½éÉÜajaxºÍsortableÒ»Æð£¬Ã»ÓкÍdatabase½áºÏ×ÅÓã¬Î¨Ò»¿´µ½µÄ¾ÍÊÇÓÃcookie£¬Èç¹ûÓÐÅóÓÑϲ»¶ÓÃcookieµÄ£¬¿ÉÒÔÀ´ÕâÀï¿´¿´¡£ ÎÒ¸öÈ˲»Ï²»¶cookie£¬cookieÓÐʱ¼äµÄÏÞÖÆ£¬¶øÇҺöàÈËÏÖÔÚ¶¼½ûÖ¹cookieµÄʹÓÃÁË¡£¾Í×Ô¼º±àÁ˸öÂ룬ÓÃphp¡¢j ......
Ò»¡¢ н¨Ò»¸öAjax_StartµÄÍøÕ¾
¶þ¡¢ ÔÚÍøÕ¾ÖÐÌí¼ÓÒ»¸öweb·þÎñ£¨ws_start.asmx£©
ÔÚvs2008ÖУ¬Ìí¼ÓÒ»¸öweb·þÎñÉú³ÉÁËÁ½¸öÎļþ£¬Ò»¸öÊÇasmxÎļþ£¬Ò»¸öÊÇÔÚApp_codeÀïµÄcsÎļþ£»ÎÒ¾õµÃÕâÑù²¢²»ºÃ£¬Ö ......
½ñÌìͬʸæËßÎÒµÄÒ»¸öÀý×Ó£¬ÔÝʱûÓÐʱ¼äÇ××ÔÊÔÑ飬Ïȼǵ½ÕâÀï¡£
jQuery(document).ready(function(){
$.ajax({
......