ÔÚAjax url´«²Îʱ³öÏÖÖÐÎÄÂÒÂëµÄÇé¿ö
Àý1: xmlHttp.open("GET","Engine.aspx?Action=getmainsort&Type=2&Parent="+escape("ÖÐÎÄ")+"&Stochastic=" + Math.random(),true);
µ«ÊÇÕâ¸öÖ»ÄÜÆÕͨµÄ<a href=''.ÓÐЧ¹û¡£Èç¹ûÊÇajax´«ÖµµÄ»°»¹ÊDz»ÐеÄ...ÓÐÈËÌá³ö:ÒªÓÃURIEncode±àÂë,È»ºóÔÚºǫ́½øÐнâÂë....µ«ÊÇÕâÑù×öÒ²ÊDz»ÐеÄ...
Àý2: url=user.do?content=encodeURI(encodeURI(con))
ºǫ́ :
URLDecoder.decode(request.getParameter("content"),"UTF-8");
ÕâÖÖ·½Ê½Ã²ËÆ¿ÉÒÔ,µ«ÊÇ»¹ÊÇÐèÒªÔÚºǫ́½âÂë,²»ÊÇ×îºÃµÄ·½°¸
ËÑË÷ºÜ¶à½â¾ö·½°¸,½á¹û¶¼Ò»Ñù»¹ÊDz»ÐÐ....½ÓÊܵ½µÄÖµ ʼÖÕ¶¼ÊÇÂÒÂë
×îºóÕÒµ½Ò»¸ö·½·¨:
Ò³ÃæÉÏ:
$.ajax({
type: "GET",
cache: ......
Ajax´«²ÎÂÒÂë AjaxÖÐÎÄÂÒÂë ½â¾ö
ÔÚAjax url´«²Îʱ³öÏÖÖÐÎÄÂÒÂëµÄÇé¿ö,½â¾ö·½·¨:
Àý1: xmlHttp.open("GET","Engine.aspx?Action=getmainsort&Type=2&Parent="+escape("ÖÐÎÄ")+"&Stochastic=" + Math.random(),true);
µ«ÊÇÕâ¸öÖ»ÄÜÆÕͨµÄ<a href=''.ÓÐЧ¹û¡£Èç¹ûÊÇajax´«ÖµµÄ»°»¹ÊDz»ÐеÄ...ÓÐÈËÌá³ö:ÒªÓÃURIEncode±àÂë,È»ºóÔÚºǫ́½øÐнâÂë....µ«ÊÇÕâÑù×öÒ²ÊDz»ÐеÄ...
Àý2: url=user.do?content=encodeURI(encodeURI(con))
ºǫ́ :
URLDecoder.decode(request.getParameter("content"),"UTF-8");
ÕâÖÖ·½Ê½Ã²ËÆ¿ÉÒÔ,µ«ÊÇ»¹ÊÇÐèÒªÔÚºǫ́½âÂë,²»ÊÇ×îºÃµÄ·½°¸
ËÑË÷ºÜ¶à½â¾ö·½°¸,½á¹û¶¼Ò»Ñù»¹ÊDz»ÐÐ....½ÓÊܵ½µÄÖµ ʼÖÕ¶¼ÊÇÂÒÂë
×îºóÕÒµ½Ò»¸ö·½·¨:
Ò³ÃæÉÏ:
$.ajax({
......
AJAXÂÒÂë½â¾ö
ÓùýAJAXµÄÅóÓѿ϶¨ÖªµÀjavascriptÊÇʹÓÃUTF-8¹ú¼Ê±àÂ룬¼´Ã¿¸öºº×ÖÓÃ4¸ö×Ö½ÚÀ´´æ´¢£¬µ«ÊÇÕâ¾ÍÔì³ÉÁËÓÃAJAXÀ´sendÊý¾ÝµÄʱºò³öÏÖÂÒÂë¡£
AjaxÂÒÂë²úÉúÖ÷ÒªÓÐ2¸öÔÒò
1. xtmlhttp ·µ»ØµÄÊý¾ÝĬÈϵÄ×Ö·û±àÂëÊÇutf-8£¬Èç¹ûǰ̨ҳÃæÊÇgb2312»òÕßÆäËü±àÂëÊý¾Ý¾Í»á²úÉúÂÒÂë
2. post·½·¨Ìá½»Êý¾ÝĬÈϵÄ×Ö·û±àÂëÊÇutf-8£¬Èç¹ûºǫ́ÊÇgb2312»òÆäËû±àÂëÊý¾Ý¾Í»á²úÉúÂÒÂë
Ò»¡¢Ê¹ÓÃencodeURIComponent¼ÓÉÏÐÞ¸Ä Content-Type Ϊ application/x-www-form-urlencoded" À´°ÑÊý¾Ýͳһ±àÂë³É url ¸ñʽ£¬µ«ÊÇÕâÑù×öÓÐÒ»¸ö±×¶Ë£¬¾ÍÊÇÌ«´óµÄÊý¾ÝÍùÍù»á³ö´í¡£
¶þ¡¢ÊÇͨ¹ývbscript µÄдµÄº¯Êý°ÑÊý¾Ýת³Égb2312¸ñʽµÄ£¬ÎÒ¸öÈ˾õµÃÕâÖÖ·½·¨±È½ÏºÃ¡£ÓÐÐËȤµÄÅóÓÑ¿ÉÒÔµ½ÍøÉÏÈ¥²éһϡ£
Èý¡¢¿Í»§¶Ë¡¢·þÎñÆ÷¶ËÈ«²¿²ÉÓÃUtf-8±àÂ룬ÇÒurl·¢ËÍÖÐÎÄ×Ö²ÉÓÃescape±àÂë,unescape½âÂë¡£¶øÇÒЧÂʸß,¶øÇÒ·ûºÏÄ¿Ç°µÄÐÎʽ,utf-8±àÂë±¾Éí¾ÍÊÇÒ»ÖֱȽÏÓÅÐãµÄ±àÂë¡£
½ñÌìÍ»·¢ÆæÏ룬AJAXµ÷ÓõÄʱºò»á²»»á·¢ËÍcookie ÄØ£¿ÂíÉÏдÁËÒ»¸ö³ÌÐò²âÊÔһϣ¬¹ûÈ»ÄÜ£¬ÕâÑù¾Í¿ÉÒÔÔÚµ÷ÓÃajax֮ǰ£¬ÏÈ°ÑÊý¾Ýͨ¹ýjavascriptдµ½cookieÀ ......
ÓÃstruts2+jquery+json+hibernate+ajax×öÁËÒ»¸öµÇ½µÄdemo¡£
1.jspÒ³Ãæ
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>ÎÞ±êÌâÎĵµ</title>
<style type="text/css">
#loginForm label.error
{
padding-left: 16px;
margin-left: 2px;
color:red;
}
input.error, textarea.error
&n ......
Client¶Ë
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<script language="javascript">
var XmlHttp=new ActiveXObject("Microsoft.XMLhttp");
function sendAJAX()
{
XmlHttp.Open("POST","Server.aspx",true);
XmlHttp.send(null);
XmlHttp.onreadystatechange=ServerProcess;
}
function ServerProcess()
{
if (XmlHttp.readystate==4 || XmlHttp.readystate=='complete')
{
document.getElementById('nameList').innerHTML =XmlHttp.responsetext;
}
}
setInterval('sendAJAX()',1000);
</script>
</head>
<body>
<div id="nameList"></div>
</body>
</html>
Áí½¨Ò» ......
´´½¨ÓÃÓÚ±£´æͼƬµÄ±í£º
create table stockImages
( imageid int primary key identity(1,1),
[filename] varchar(50),
img varbinary(max))
²åÈë±¾µØͼƬ£º
insert into stockImages
select '·ç¾°',bulkcolumn
from openrowset(bulk 'd:\\img.jpg',single_blob) as x
´´½¨´æ´¢¹ý³Ì£¬¼ìË÷ͼƬ£¬½«¶þ½øÖÆÊý¾Ý°üº¬ÔÚXMLÎĵµÆ¬¶ÎÖУº
create proc getImage @id int
as
declare @xmlResult xml
set @xmlResult=(select * from stockImages where imageid=@id for xml auto,elements,root('Items'),binary base64)
select @xmlResult
ʹÓÃÒ»°ã´¦ÀíÎļþ»ñÈ¡¼ìË÷µ½µÃXMLÎĵµ²¢·¢Ë͵½¿Í»§¶Ë£º
<%@ WebHandler Language="C#" Class="ImageHandler" %>
using System;
using System.Web;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.Xml;
public class ImageHandler : IHttpHandler {
public void ProcessRequest (HttpContext context) {
string connectionString =
......