0

winfromアプリケーションでは、私は持つことができます

textbox1.keydown 

イベントですが、Webフォーム(asp.net)で同じことを実現したいのですが、どうすればいいですか? このイベントでデータベースからデータを取得する必要があります...

4

3 に答える 3

2

onkeydown イベントを使用すると、クライアント側の関数が呼び出されます。クライアント側関数内で、ajax 呼び出しを行ってデータベースからデータを入力できます。

    <asp:TextBox ID="txtName" runat="server" onkeydown="javascript: callMe();" />

    function callMe()
    {
        $.ajax({
          url: 'URLOFTHEFUNCTION',
          type: 'GET',
          cache: false,
          success: function (result) {
              alert(result)
          }
       });
   }
于 2012-09-24T07:24:36.390 に答える
0

Webアプリケーションでは、クライアントで行うこととサーバーで行うことがあります。

私は今あなたが何を達成するかはわかりませんが、ほとんどの場合、キーダウンイベントはクライアントで発生すると思います。

そのため、この種のスタッフを支援するJQUERY(javascript)と呼ばれる優れたライブラリがあります。

KEYDOWNのドキュメントを参照してください

私はあなたのためにを書きました

HTMLコード

<input id="txtBox" type="text" />​

JQUERY(javascript)コード

$(document).ready(function() {

$("#txtBox").keydown(function() {   
   $.ajax({
   url: "URLTOTHEFUNCTIONINTHESERVER",
   type: 'GET',
   cache: false
   }).done(function( html ) {
    alert(html);
    });
});

});​

コードの説明はOK

  • ドキュメントの準備ができているかどうかを確認している最初の行
  • 次に、キーダウンイベントをキャッシュして関数を起動します
  • jqueryのajex関数を呼び出している関数内で、関数内に、サーバーから返されるコンテンツを保持する「完了」関数とhtmlという変数が表示されます。
于 2012-09-24T07:39:37.307 に答える
0

Winフォームでは、実行中のマシンを使用して対話します.smthkeydownイベントが発生しますが、Webフォームでは、クライアント側のファイルがサーバーから複数のクライアント(例:stackoverflow.comとそのユーザー)に送信されると、サーバーはありませんサイドイベントは JavaScript なしで発火できます。目標を達成するには、JS で keyUp イベントをキャッチし、Callbackでデータを送信してから、サーバーからクライアントに必要なデータを返し、そのデータを JS で処理することをお勧めします。
2 番目の方法 は、protected void TextBox1_**TextChanged**(object sender, EventArgs e) このイベントを使用することですが、キーを押すたびにページが更新されます。

于 2012-09-24T07:38:37.353 に答える