javascript - 通过在按钮列中显示对话框来在 GridView 中编辑记录

标签 javascript php jquery ajax yii

在我的网络应用程序中,我需要使用 javascript 实现一个用于编辑按钮的对话框 和 Ajax 。我的代码适用于 ajax,但我想显示用于编辑记录的对话框。 我的代码

$this->widget ( 'zii.widgets.grid.CGridView', array (
        'id' => 'store-grid',
        // 'itemsCssClass' => 'table-bordered items',
        'dataProvider' => $model->search (),
        'filter' => $model,
        'columns' => array(
                'id',
                'store_name',
                 'is_deleted',

                 array(
                 'class' =>'CButtonColumn',
                     'class'=>'CButtonColumn',
        'deleteConfirmation'=>"js:'Do you really want to delete record with Store name '+$(this).parent().parent().children(':nth-child(2)').text()+'?'",

                 'template'=> '{view}{update}{delete}',
                 'buttons'=>array
                 (
                 'view'=>

                 array(
                 'options'=>array(
                 'ajax'   =>array(
                 'type' =>'POST',
                 'url'  => "js:$(this).attr('href')",
                 'update' => '#id_view',
                 ),
                   ),
                   ),

                 'update'=> array
                  (
                  'options' =>array(
                  'ajax'   =>array(
                   'type'   =>'POST' ,
                   'url'    =>"js:$(this).attr('href')",
                   'click'  =>"function(){alert("js:$(this).attr('href')"}",
                    'update'=>'#id_view',

       ),
    ),

                    ),
                    ),
                    ),
        ),                             



                  )
        );









?>
<div id="id_view"></div>

如果我使用点击函数,然后在“警报”函数中给出 url,我会收到错误。有没有什么方法可以在 javascript 函数中使用“($this)”给出对象的详细信息适本地。任何机构帮助我解决这个问题我都无法继续。我收到这行代码的错误

'click'  =>"function(){alert("js:$(this).attr('href')"}",

我应该如何使用 JavaScript 来实现这个? 这是小部件的 html 输出

    <div class="span-19">
    <div id="content">
        <ul class="breadcrumb"><li><a href="/stores2/"><i class="icon-home"></i></a><span class="divider">/</span></li><li><a href="#">manage</a><span class="divider">/</span></li><li><a href="index">Stores</a><span class="divider">/</span></li></ul>
<div id="dialogUpdatestore">
<div class="divStore"></div>

 </div>

最佳答案

改变

 'click'  =>"function(){alert("js:$(this).attr('href')"}",

 'click'  =>"js:function(){alert("$(this).attr('href')"}",

或者这不确定:D

 'click'  =>"function(){alert("$(this).attr('href')"}",

关于javascript - 通过在按钮列中显示对话框来在 GridView 中编辑记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20583551/

相关文章:

javascript - Chrome 扩展,scrollTop=0 任何地方

javascript - 我如何才能将多个div彼此叠加,并随着用户滚动,每个div向上移动以显示其背后的一个

php - php 中的简单 openID

javascript - CodeIgniter 将 AJAX 数据传递回 Controller

jquery - jQuery 元素是插件的实例吗?

java - 如何仅重新加载部分代码 - Java

javascript - 使用 jQuery 使用 split 或 length 将 div 中的 10 位数字拆分为 3,3,4

php - 从 MySQL 数据库中删除一行

php - Drupal 安装配置文件

javascript - 如何通过单击 'Cancel' 按钮取消文件上传