0

編集ボタンがある Cakephp ビュー (index.ctp) があります。ボタン編集で、edit.ctp にあるもので jquery ダイアログ ボックスを開きます。(現在、edit.ctp に移動すると正常に動作しますが、ユーザーが同じページにとどまるようにモデル/ダイアログ ボックスを使用しようとしています)

これは私のindex.ctpにあるものです

    <td>

                <?php echo $this->Html->link($team['Company']['name'], array('action' => 'edit_reload','team_id'=>$team['Team']['id']), array('id'=>"dialog_link", 'class'=>"ui-state-default ui-corner-all"));?>

            </td>

<div id="dialog" title="Dialog Title">


</div>

リンクがクリックされたら、ここに edit_reload.ctp の内容を表示したいと思います。私は完全に疲れ果てているので、どんな助けも感謝します

4

1 に答える 1

2

別の JS ファイルに次のコードを記述し、値を変数に追加して、JS ファイルを .ctp ファイルに含めます。

$(document).ready(function() {
    $myWindow = $('#dialog');
    //instantiate the dialog
$myWindow.dialog({ height: 250,
        width: 200,
        modal: true,
        position: 'center',
        autoOpen:false,
        title:'',
        overlay: { opacity: 0.5, background: 'black'}
});
    $J("#dialog_link").click( showDialog );
    });// end (document).ready


  var showDialog = function() {
    var team_id = '';
    var url     = '/controller/action/' + team_id;//Apply path to controller, action
    $.post(url, function(res) {
    $myWindow.dialog({
    title:'Give Title'
});
    $('#dialog').html(res);
    $myWindow.show();
    });
  }    

.ctp ファイルでは、次のようにリンクを使用します。

echo $this->Html->link($team['Company']['name'],'#', array('id'=>"dialog_link", 'class'=>"ui-state-default ui-corner-all"));

例を示しました。.ctp ファイルにも js コードを記述できます。

于 2012-04-30T03:22:47.150 に答える