2

我使用以下代码在 Jquery Ui 对话框模式中加载视图。

打开 Modal 的 Javsscript 代码:

<script>
       $.fx.speeds._default = 1000;
        $(function() {
            $( "#dialog_1" ).dialog({
                autoOpen: false,
                show: "blind",
                hide: "explode",
                height: 350,
                width: 450,
                modal: true
            });

            $('.loginForm').click(function(){               
                $('#dialog_1').dialog('open');
                return false;
            });     
        });
</script>

此打开对话框的 Onclick:

<a class="loginForm" href=""  id="<?php echo $info['clf_id'];?>">
   <?php echo $info['clf_title'];?>
</a>

这是要在我加载视图的 Modal 上加载的 div:
这是我遇到的问题,我已经通过$id了函数classified_details($id);
此 id 是上述 <a>标签的实际 id。
我怎么能在我的代码中做到这一点,或者应该使用另一种方式???

<div id="dialog_1">
 <?php
    $data['classfied_details'] = $this->classified_model->classified_details($id);
    $this->load->view('classified_datail', $data);
   ?>
</div>
4

2 回答 2

0

我的方法是使用 ajax 调用用适当的数据填充对话框,然后显示它。

JS 会是这样的。您在控制器中调用一些操作

$('.loginForm').click(function(){    
     $.ajax({
         url: '/controller/action',
         data: { id: $(this).attr('id)},
         dataType: 'html',
         type: 'POST',
         success: function(data){
             $('#dialog_1').html(data);
             $('#dialog_1').dialog('open');     
         }
    });  
}); 

在您的操作中,您只需获取传递的 id 并调用模型函数。

$data['classfied_details'] = $this->classified_model->classified_details($_POST['id']);
$this->load->view('classified_datail', $data);

您不应该在链接中使用两次 id 属性。尝试这样的事情:

<a class="loginForm" href="#" id="<?php echo $info['clf_id'];?>">
于 2013-04-03T07:03:35.950 回答
0

我假设:$this->classified_model->classified_details($id);是返回数组$info,你需要这个ECHO:

<a class="loginForm" href=""  id="<?php echo $classfied_details['info']['clf_id'];?>">
  <?php echo $classfied_details['info']['clf_title'];?>
</a>
于 2013-04-03T07:21:46.290 回答