2009-04-10 7 views
2

私はモーダルダイアログにjqueryを使用しています。私は1つのページからモデルダイアログを開き、いくつかの追加のクエリ文字列をモーダルダイアログページに送りたいと思っています。クライアント側からテキストボックスの値を取得し、そこからクエリ文字列を作成する方法は?

<asp:HyperLink ID="hypClientSearch" runat="server" NavigateUrl="~/SomePage.aspx?KeepThis=true&additionalQS='<%= txtBox.Text %>'&TB_iframe=true&height=650&width=800&modal=true" CssClass="thickbox" > 

この例はうまくいきません。誰もが解決策を知っていますか?それが開いたとき

答えて

4

Helgiの回答に加えて、
あなたは(あなたがして、IDを他のセレクタを使用する必要があるときのため)にjQueryを使用して、テキストボックスの値を取得したい場合は、使用することができます。

var textBoxValue = $(textBoxSelector, window.opener.document).val(); 

編集
ああ、私はちょうどあなたが使用していることに気づきましたモーダル。次に、ページはiframe内に開設され、あなたが使用してiFrameの中から値を取得することができます。また

var textBoxValue = $(textBoxSelector, window.parent.document).val(); 

を使用すると、リンクのhref attribiteに編集してみてくださいiFrameの要求でサーバーに送信する必要がある場合クリック:

$('#hypClientSearch').click(function() { 
var textBoxContent = $(textBoxSelector).val(); 
$(this).attr('href', 'somepage.aspx?textbox='+textBoxContent+'&otherVarsForModal=foo'); 
//we let the event bubble for the modal plugin, so ne returning false here 
}); 
1

(これはjavascriptのクライアント側で)モーダルダイアログでこれを試してみてください:

var textBoxValue = window.opener.document.getElementById("txtBoxId").value; 

あなたが、その後はJQueryを使用して、たとえば、ダイアログ内の正しい場所に追加情報を挿入するためにJavascriptを使用しています。

関連する問題