我需要的是简单的东西,您可以通过某种方式创建MassAction,但无需选择项目(如果所有项目都是如此)。
我是否可以选择创建MassAction来实现此目的?
默认情况下,如果您没有选择某个项目,则会返回一条消息,说明必须至少选择一个项目。
@EDIT
这是验证它可以通过某种方式进行验证而无需重写CORE的地方吗?
JS \法师\ adminhtml \ grid.js
apply: function() {
if(varienStringArray.count(this.checkedString) == 0) {
alert(this.errorText);
return;
}
答案 0 :(得分:0)
看起来群发行动适用于帖子: 应用程序/代码/核心/法师/ Adminhtml /型号
public function massactionPrepareKey()
{
$request = Mage::app()->getFrontController()->getRequest();
if ($key = $request->getPost('massaction_prepare_key')) {
$value = is_array($request->getPost($key)) ? $request->getPost($key) : explode(',', $request->getPost($key));
$request->setPost($key, $value ? $value : null);
}
return $this;
}
可能最简单的方法是修改群众行动JS,以便在发布之前选择所有项目。
JS的目的是在js / mage / adminhtml / grid.js中。我必须跑步,所以我现在无法弄清楚如何做到这一点,但你可以从这里开始:
selectAll: function() {
this.setCheckedValues((this.useSelectAll ? this.getGridIds() : this.getCheckboxesValuesAsString()));
this.checkCheckboxes();
this.updateCount();
this.clearLastChecked();
return false;
},
这看起来是Magento用来选择所有项目的。