2010-11-30 8 views
1

グリッドビューを含むアプリケーションがあります。ユーザーがグリッドビューから項目の1つを選択すると、グリッドビューから選択した項目の事前入力情報を含むフォームを含むjQueryダイアログボックスを表示できます。今私はモーダルダイアログボックスに設定されているいくつかのhtmlテキストボックスを持つdivがあります。ユーザーがクリックすると、選択したアイテムのIDを簡単に取得できます。この問題は、データベースにアクセスして詳細を取得し、ダイアログボックスをユーザーに表示する前にテキストボックスやその他の要素の一部を事前に入力したいときに発生します。jQueryモーダルダイアログフォームに移入

ユーザーが項目をクリックすると、すでに入力されている項目の中のいくつかの項目を処理するフォームを送信できるようになります。これについては、最も簡単な方法は何ですか?今私はそれを持っているので、グリッドビューから項目を選択すると、データベースの外に出てレコードのすべての詳細を取得できるコードの[WebMethod]にID付きAjax投稿を行うためにjQueryが使用されます。問題は明らかな理由から、WebMethodは魔法のようにフォームのフィールドを埋めることができないということです。すべての情報をajaxクエリーに送り返して返信することもできますが、送り返したランダムなデータと実際にどのフィールドに属しているかが実際に強く結びついていないため、かなり面倒です。

これは多くのことを大いに熟考していますが、ASP.NETでjQueryとAjaxを使用する方法をよりよく理解することに本当に関心があります。

ご協力いただきありがとうございます。

答えて

0

GridViewのボタンに属性を追加します。問題は、ダイアログの上映ではありません

function ShowDialog(){ 
     //setup the dialog 
$('#dialog).setup(function(){ 
    ......, 
    buttons: "OK", function(){ 
    //save by calling btn2.click() where btn2 is a hidden button that handles save logic in server side 
}); 
}); 
     $('#dialog').show(); 
    return false; 
    }); 
+2

が、それはいくつかの要素を持っているフォームとの対話を満たしている

btn.Attributes.Add("onclick","ShowDialog();"); 

クライアントスクリプトデータベース呼び出しから書き込まれます。私はajax呼び出しでフォームのhtmlを作成するのではなく、フォームのこれらの要素を埋める良い方法があるかどうかを知りたいと思います。 –

+0

実際、ダイアログにはHTMLが表示されるため、フォームとサーバーコントロールを内部に持つ隠しdivを持つことができます。サーバー側のフィールドに値を入力し、ダイアログを使用してdivを表示します。 –

+0

このソリューションの問題点は、サーバーコントロールが最初のページの読み込み後に情報を取得する必要があることです。ページは、ユーザーが1つを選択するグリッドビューでロードされ、モーダルダイアログボックスが起動します。コントロールがページ上のdiv内に隠されているときに情報サーバー側に記入するには、グリッドビューをクリックするときに動的にサーバー側プログラミングで記入することはできません。 –