我正在使用Magento社区版1.7版。
我在管理面板中有一个网格。 现在,当我点击此URL时,它会在左侧边栏中打开一个带有两个标签的表单。 当我点击第二个标签时,它会在右侧显示一个网格。
然后我点击此网格的一行,在另一页上打开一个表单。 在这种形式中有后退按钮。
如何将其网址更改为上一页?
答案 0 :(得分:8)
添加自定义后退按钮并删除Form Container类构造函数中的默认按钮。
$data = array(
'label' => 'Back',
'onclick' => 'setLocation(\'' . $this->getUrl('*/*/*') . '\')',
'class' => 'back'
);
$this->addButton ('my_back', $data, 0, 100, 'header');
...
parent::__construct();
...
$this->_removeButton('back');
答案 1 :(得分:5)
只需要覆盖getBackUrl
功能:
class [Namespace]_[Module]_Block_Adminhtml_[CustomBlock] extends Mage_Adminhtml_Block_Widget_Form_Container
{
/** code **/
public function getBackUrl()
{
parent::getBackUrl();
return $this->getUrl('[New URL]');
}
/** code **/
}
注意:在Magento ver中测试过。 1.9.1.0
答案 2 :(得分:1)
只需覆盖默认的后退按钮:
parent::__construct();
$data = array(
'label' => 'Back',
'onclick' => 'setLocation(\'' . $this->getUrl('*/*/*') . '\')',
'class' => 'back'
);
$this->addButton ('back', $data, 0, 100, 'header');
注意parrent::__construct();
答案 3 :(得分:0)
这是更改后退按钮网址的最简单方法。
protected function _construct()
{
$this->_objectId = 'row_id';
$this->_blockGroup = 'Namespace_Modulename';
$this->_controller = 'adminhtml_grid';
parent::_construct();
if ($this->_isAllowedAction('Namespace_Modulename::add_row')) {
$this->buttonList->update('save', 'label', __('Save'));
} else {
$this->buttonList->remove('save');
}
/**
* Below line to change your back url of grid
*/
$this->buttonList->update('back', 'onclick', 'setLocation(\'' . $this->getUrl('*/*/index') . '\')');
}