0

'contents'という名前のdiv要素とテキストボックスを持つasp.netWebフォームがあります。divにはいくつかのhtmlがロードされており、これをコードビハインドファイルの文字列に取得しました。このhtml内で、テキストのさまざまなビットをマークアップして、ユーザーがそれらをクリックすると、サーバーにメッセージを送り返し、サーバーがテキストボックス(同じフォーム上にある)に他のテキストを入力できるようにする必要があります。データ。

私が抱えている問題は、サーバーに通信するための最善の方法です。したがって、以下のコードでは、

1)ラインアラート("クリックした"+ x); ajaxを使用してサーバーにコールバックし、パラメータ「hello」を送信するようにします。

2)サーバーでどのメソッドが呼び出されますか?もう一度Page_Loadになりますか?

3)サーバーを呼び出した後、ページ全体を再度返送せずに(つまり、まだajaxを使用して)テキストボックスにデータを入力するために必要なコードは何ですか?問題はサーバー上のテキストを取得していないことです。サーバーのパラメーターとして「hello」を受け取り、再びajaxを使用して「さようなら」をテキストボックスに送り返したいとしましょう。

だから私のソースaspxファイルにはこれが含まれています...

そして、form_loadのcodebehindファイルにあります。

System.IO.StreamReader rdr = System.IO.File.OpenText("c:\\myHtmlFile.html");
string s = rdr.ReadToEnd();
this.contents.InnerHtml = s;

div要素にロードしているHTMLはこれです

     <script type="text/javascript">
         function myfunction(x)
     { 
  alert("You clicked " + x);
         }
 </script>

 <p  onclick="myfunction('hello')">hello</p>

ユーザーが「こんにちは」をクリックしたとき、TextBox1に「さようなら」と言ってもらいたい。繰り返しになりますが、Webページを再投稿せずに、ここで処理する必要があるのはサーバーです。

誰かアイデアはありますか?シンプルな方がいいです!前もって感謝します...

4

1 に答える 1

0

このインターフェイスの実装に関する Microsoft のドキュメントを確認してください。

ICallbackEventHandler

この助けを願っています。

于 2012-06-12T13:17:57.730 に答える