如何将数据从表数据传递到弹出模式(使用Yii框架)

时间:2013-10-10 06:44:09

标签: php yii

如何将数据从我的表传递到弹出窗口。 这就是我在表格中的表现: 我使用控制器和模型从数据库中填充表格

    <table class="table table-striped table-checkable" id="demo-dtable-02" aria-describedby="DataTables_Table_0_info">
        <thead>
            <tr>
                <th class="sorting" role="columnheader" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" aria-label="Subject: activate to sort column ascending" style="width: 220px;">??</th><th class="sorting" role="columnheader" tabindex="0" aria-controls="DataTables_Table_0" rowspan="1" colspan="1" aria-label="Date: activate to sort column ascending" style="width: 79px;">??</th>
            </tr>
        </thead>
        <tbody role="alert" aria-live="polite" aria-relevant="all">

            <?php
                    foreach ($my_page_data['text_list']as $text_list_key => $text_list_data){
            ?>

            <tr class="odd">
                <td class=" "><a href="#" onclick="viewText(<?php echo $text_list_data['id'] ?>)" data-toggle="modal" data-target="#view-text" ><?php $msg = $text_list_data['msg']; ?></a></td>
            <div id="<?php echo $inbox_list_data['id'] ?>" data-content="<?php $msg = $inbox_list_data['message']?>"></div> <!-- i used this as a hidden div for the data to be passed because i dont know other ways -->                                                                          
                <td class=" "><?php $date =  $text_list_data['date_updated'];?></td>
            </tr>
            <?php } ?>
        </tbody>
    </table>

然后我用脚本传递数据......

    <script>
        function viewInbox(id){
            $('#inbox-message-body').text($('#'+id).attr('data-content'));
        }
    </script>

然后点击的数据将显示在此处:

    <div class="modal-body">
        <div class=" . . .">
            <div class="..">
                <span class="view-label">From:</span> MY OTHER DATA <!--TODO: -->
                <br>
                <span class="view-label">To:</span> MY DATA<!--TODO: -->
                <br>
            </div>

        </div>
            <!--TODO: Message body-->  I
       <span id="message-body" class="span8"></span> 

    </div>

此代码只在一个文件中。 我正在创建的页面就像。我有一张消息表。然后查看消息是单击它,将出现一个弹出窗口。

任何见解?

你的帮助很大。

1 个答案:

答案 0 :(得分:0)

我这样做的方法是将模态模板分配给不同的控制器,然后通过像这样的ajax请求调用它。

$(".modalCaller").click(function(){
    $.ajax({
        type: POST,
        url: "/insert/modal/controller/here",
        data: {id: $(this).data("id")},
        success: function(data){
           data.appendTo("body").modal("show");
        }
    })
});

然后将你的模态放到另一个视图中。