【问题标题】:Yii CGridView bulk edit/update?Yii CGridView 批量编辑/更新?
【发布时间】:2012-09-13 07:32:33
【问题描述】:

我想在 Yii CGridView 中编辑/更新多行。 比如说,每一行都有一个复选框和一个编辑/更新按钮,我选择多行并通过单击编辑/更新按钮打开所有选定的行进行编辑和更新。

Yii CGridView 可以做到这一点吗??

【问题讨论】:

    标签: php yii


    【解决方案1】:

    使用CGridView 的selectableRows 属性。

    根据Yii Documentation for CGridView

    公共整数 $selectableRows;

    可选择的表体行数。如果为 0,则表示无法选择行。如果为 1,则只能选择一行。如果为 2 或任何其他数字,则表示可以选择多行。选定的行将有一个名为“selected”的 CSS 类。

    您可以使用$.fn.yiiGridView.getSelection(containerID) 来检索所选行的键值。

    在网格视图的顶部或底部添加更多按钮,用于编辑、删除或您需要采取的任何操作,并传递上面检索到的键值。

    【讨论】:

      【解决方案2】:

      如果你想在线编辑行,你可以使用我搞砸的扩展 phaActiveColumn 来支持多行(如果需要,整个表)。

      编辑:好吧,当用户单击单元格时,扩展程序基本上会创建一个输入字段来替换网格单元格。该字段将包含单元格的初始值,然后一旦用户按下回车,它就会向控制器发送一个 ajax 调用,要求保存该字段的值,这将是用户的输入。

      我的补充是为行中的每个单元格创建一个这样的字段,并将用户输入存储在 javascript 对象中,然后通过对控制器的一次 ajax 调用一次性发送所有内容。支持多行更新(创建足够数量的 javascript 对象)。

      如果有人对此有任何兴趣。

      phaEditColumn2

      phaAbsActiveColumn2

      【讨论】:

      • 请注意 link-only answers 是不鼓励的,所以答案应该是寻找解决方案的终点(相对于另一个中途停留的参考,随着时间的推移往往会变得陈旧)。请考虑在此处添加独立的概要,并保留链接作为参考。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多