Ajax ÔÚÓû§¿Ø¼þÖеÄÓ¦Óã¨ÒÔGoogle SuggestΪÀý£©
ʼþ´¥·¢£º
<input name="keyword" onkeyup="LoadResults(this.value)" id="keyword" runat="server"/>
¿Í»§¶ËÖ÷Ì壺
//¶¨ÒåÓû§¿Ø¼þIDÈ«¾Ö±äÁ¿
var ClientID;
function ShowDiv(divid)
{
//...
}
function HideDiv(divid)
{
//...
}
//Ò³Ãæ¼ÓÔØÊ±µÄ´¦Àí
function BodyLoad()
{
HideDiv(ClientID + "searchresults");
var findtextbox = document.getElementById(ClientID + "keyword");
findtextbox.focus();
}
function ClearResults()
{
//...£¨Ñ°ÕÒÔªËØÊ±IDǰ¾ù¼Ó ClientID£©
}
function LoadResults(searchterm)
{
//...
// ǰ¼ÓÒ»¸öClientID×÷Ϊ²ÎÊý
Anthem_InvokeControlMethod(
"<%= ClientID %>",
'RetrieveRows',
[searchterm],
LoadResultsCallback);
}
function LoadResultsCallback(result)
{
//...£¨Ñ°ÕÒÔªËØÊ±IDǰ¾ù¼Ó ClientID£©
}
function ReplaceInput(tablecell)
{
//...£¨Ñ°ÕÒÔªËØÊ±IDǰ¾ù¼Ó ClientID£©
}
·þÎñÆ÷¶ËÖ÷Ì壺
protected void Page_Load(object sender, EventArgs e)
{
Anthem.Manager.Register(this); //×¢²áAnthem
}
[Anthem.Method] // ÉùÃ÷ΪAnthemǰ¶Ë¿É¸ÐÖªµÄ·½·¨
public DataTable RetrieveRows(string searchterm)
{
//...
}
//ÖØÔØÒ³ÃæOnInitʼþ
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
//»ñÈ¡ClientIDÖµ
string jcode = "<mce:script language=\"javascript\" type=\"text/javascript\"><!--
ClientID = '" + this.ClientID + "_" + "';BodyLoad();
// --></mce:script>";
//¸ø¿Í»§¶ËÒ³ÃæÌí¼Ójs´úÂ룬ʹǰ¶ËµÃµ½ClientID±äÁ¿Öµ
Page.ClientScript.RegisterStartupScript(typeof(Page),"suggest_control", jcode);
}
Ïà¹ØÎĵµ£º
ÔÚ¹¹ÔìurlÊÇÓÃjavascript×Ô´øµÄencodeURIComponent·½·¨½«²ÎÊý½øÐбàÂ룬ÏÂÃæÊÇÎҵĴúÂë
var url = "handel.jsp?name="+encodeURIComponent(document.form1.name.value);
httpRequest = createHttpRequest();
httpReque ......
ÈçºÎÔÚ¿Í»§¶ËÖ±½Óµ÷ÓÃWebServiceÖеķ½·¨£¿
ÕâÀï½áºÏ¾Ñé×Ô¼ºÐ´Ò»Ð´
1.Ê×ÏÈн¨Ò»¸ö ASP.NET AJAX-Enabled Web Site,ÕâÑùϵͳΪÎÒÃÇ×Ô¶¯ÅäÖúÃÁË»·¾³£¬ÕâÖ÷ÒªÌåÏÖÔÚWeb.configÕâ¸öÎļþÉÏ£¬Èç¹ûÒÑÓÐÍøÕ¾²»ÊÇASP.NET AJAX-Enabled Web SiteÒ²¿ÉÒÔ¶ÔÕÕÐÞ¸ÄÏÂWeb.config£¬Ò²¿ÉÒÔ´ïµ½ÏàͬµÄЧ¹û¡£
2.н¨Ò»¸öweb·þÎñ£¬WebSer ......
WCFµÄ¼Ü¹¹£ºusing System.ServiceModel;
ÆõÔ¼:Contract
[ServiceContract]
public partial interface IContract
{
[OperationContract]
string DocumentWebHostUrl();
}
·þÎñ£ºService
[ServiceBehavior(IncludeException ......
1.ǰ¡¢¶Ëºó¶¼Òª×öºÃ°²È«µÄ°Ñ¹Ø¹¤×÷
ÓÉÓÚAjaxÒ²»á½ÓÊÕºó¶Ë´«ËÍÀ´µÄ×ÊÁÏ£¬¶ÔÕâЩ×ÊÁ϶¼Òª²É²»ÐÅÈÎ̬¶È£¬±ØÐë¼ÓÒÔ¼ì²é¡£
2.¾¡Á¿ÒÔHTTP POST·½·¨´«Êä×ÊÁÏ
ËäÈ»POST²¢·ÇÍòÎÞһʧ£¬µ«±ÈÆðGETÖÁÉÙ½ÏΪ°²È«¡£
3.²»ÒªÖ±½ÓÓÃevalº¯Ê½»½ÆðJSONÎï¼þ
JSONÊDzÉÓÃJavaScriptÎï¼þʵ×ÖµÄ×ÊÁϸñʽ£¬´Óºó¶Ë´«µ½Ajax³Ìʽʱ£¬±ØÐë²ÉÓÃevalº ......