2011-06-26 16 views
2

私が開発しているWebアプリケーションでは、現在のユーザーをjqueryUIダイアログボックスに渡す必要があります。今、私はこの点に到達するための簡単な例を試しています。 親ページから "p"タグの内容を渡してjqueryUIダイアログに表示しようとしています。ここでjqueryUIダイアログにデータを渡す

$(document).ready(function(){ 
    $('#test').each(function() { 
     var $link = $(this); 
     var $dialog = $('<div></div>') 
      .data('test',$("test_p")) 
      .load($link.attr('href') + ' #content') 
      .dialog({ 
       modal: true, 
       autoOpen: false, 
       title: $link.attr('title'), 
       width: 500, 
       height: 300 
      }); 
     $link.click(function() { 
      $dialog.dialog('open'); 
      return false; 
     }); 
    }); 

、test_pは、私は私のダイアログボックスに送信するpタグです。私は、HTMLファイルから、「コンテンツ」のdivを表示しています -

<html> 
<head> 
<title>Add link</title> 
<body> 
    <div id="content"> 
        <!-- CONTENT OF <P> FROM THE CALLER PAGE --> 
     <form id="info" method="POST" action="/"> 
      Link : <input type=text name="thelink"/><br> 
      tag : <input type=text name="thetags"/><br> 
      <input type=submit name='submit' value="submit"/> 
     </form> 

    </div> 
</body> 

私はそれが、このようなpタグの内容がダイアログに表示される、ことを望みます。

.data()これを行う方法はありますか?それとももっと良い方法がありますか?

申し訳ありませんが、いくつかの用語が間違っている場合は...私はむしろjqueryの新しいです。

答えて

1

ダイアログウィジェットでは、$dialog.html('<p>hello world</p>')でコンテンツを設定できます。これは、ダイアログが要素ではなく要素の周りに構築されているため、ダイアログ要素の内容は実際のダイアログの内容と同じです。

0

ダイアログエレメントに添付された.data()メソッドは、データを渡すための良い解決策になります。 jQueryUIダイアログウィジェットの「オープン」メソッドを見て、ダイアログウィンドウが表示されたときに値を使用して挿入したり、他のアクションを実行したりすることもできます。

関連する問題