ホームページ >バックエンド開発 >C#.Net チュートリアル >asp.net 非同期トリガーの使用法 (AJAX)
今日のプロジェクトでは、非同期でトリガーする必要があるため、テキスト ボックスがフォーカスを失ったときにデータベースにアクセスして確認することになり、3 つの方法を考えました。
その使用法の簡単な紹介:
1. AjaxPro の使用
1. プロジェクトに reference を追加します。 、AjaxPro.2.dll ファイルを見つけます
2. Web.config の system.web に次のコードを記述します
="*" path="*.ashx" type="AjaxPro.AjaxHandlerFactory,AjaxPro.2"/>
/configuration>
3.イベント、追加 AjaxPro.Utility.RegisterTypeForAjax(typeof(class name));
4. 記述されるすべてのメソッドは
[AjaxPro.AjaxMethod] で始まり、メソッドの呼び出し時に
を記述する必要があります。明確に
NamespaceName.Class name.Method、例: WebUI._Default.getData();
6. 呼び出しは 2 つのメソッド (同期呼び出し、非同期呼び出し) に分けることができます
//バックグラウンドで記述されます。 Paymentless メソッド a [ajaxPro.ajaxMethod]
Public String Getstr () {
Return "Hello My Friends";
}
} // バックグラウンドのパラメータ メソッド
[ajaxpro.ajaxMethod]
getstring (String Str )
{
Return str + "Say: hello my friends";
}
a. html
コントロール
ボタン
にドラッグします (2)。
(3). 入力したい内容を記述します 例: //-----パラメータなしの同期呼び出し---------- ---
関数 Button1_onclick()
{
var res=WebUI._Default.getStr();
alert(res.value);
}
//-------------- -- ----同期呼び出しにはパラメータがあります----------
function Button2_onclick() //TextBox1 はサーバー コントロールです
{
var str=document.getElementById("<%=TextBox1 .ClientID% >").value;
var res=WebUI._Default.getStr(str);
alert(res.value);
}
b. 非同期呼び出し
(1). HTML コントロール ボタンにドラッグします
(2) .ダブルクリックすると、.aspx スクリプトが自動的に表示されます
(3) に入力したい内容を書き込みます
例:
//------------ -----非同期呼び出し パラメータなし---------------------
function Button3_onclick() {
WebUI._Default.getStr(getStrCallBack);
}
function getStrCallBack(res)
{
alert(res. value);
}
//----------------非同期呼び出しにはパラメータがあります-------------- ---
function Button4_onclick( ) {
var str=document.getElementById("<%=TextBox1.ClientID %>").value;
WebUI._Default.getString(str,getStringCallBack);
}
function getStringCallBack (res)
{
alert (res.value);
}
7.
object
//Object[AjaxPro.AjaxMethod]public Class getClass()
{
Class cla = new Class()を呼び出します。 ;
cla.C_Id = 100 ;
cla.C_Name = "クラス 34";
cla.Count = 20;
return cla;
}
//---------------- --同期呼び出しオブジェクト-- -------------
function Button5_onclick() {
var res=WebUI._Default.getClass().value;
alert("クラス番号: "+res.C_Id+" Name : "+res.C_Name+" 人数: "+res.Count);
}
//------非同期呼び出しオブジェクト------ -----
function Button6_onclick( ) {
WebUI._Default.getClass(getClassCallBack);
}
function getClassCallBack(clas)
{
var res=clas.value;
alert("クラス番号: "+res. C_Id+"名前: "+res.C_Name+ "人数:"+res.count);
}
8.
データセット
メソッド
[ajaxpro.ajaxmethod]
public dataset getinfo () { RETURN Webui.getdatase .getList (); }
//--------データセットを非同期的に呼び出す--------------
function Button8_onclick() {
WebUI._Default.getInfo(getDataSetCallBack);
}
function getDataSetCallBack(res)
{
var dataset=res.value;
var strHtml="";
strHtml +='
学生编号 | ';名前< /td>'; strHtml +=' | 年龄 | ';
'+ dataset.Tables[0].Rows[i].stu_id +' td>'; strHtml +=' | '+ dataset.Tables[0].Rows[i].stu_name +' | ';'; strHtml +=' '; } strHtml +=' |
以上がasp.net 非同期トリガーの使用法 (AJAX)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。