如何为_addButton定义目标?以下是我正在使用的代码。我阅读了位于此处的Magento文档,但他们没有此信息:http://docs.magentocommerce.com/Mage_Adminhtml/Mage_Adminhtml_Block_Widget_Container.html#method_addButton
$this->_addButton('rebuild_files', array(
'label' => Mage::helper('core')->__('Rebuild Special Cache'),
'onclick' => 'setLocation(\'http://mysite.com/page/\')',
'class' => 'rebuild',
));
答案 0 :(得分:5)
设置目标是不可能的,因为容器的按钮不在表单内部,而且表单的目标会产生影响。此外,该按钮不会触发任何形式,但使用javascript来指导浏览器(因此setLocation
位)。 Magento admin有一个方便的功能,你想要的是popWin
,它是Window.open
的简写,所以第二个参数是目标窗口名。
$this->addButton('rebuild_files', array(
'label' => Mage::helper('core')->__('Rebuild Special Cache'),
'onclick' => 'popWin("http://mysite.com/page/", "_blank")',
'class' => 'rebuild',
));
PS。 _addButton
是受保护的方法。最好使用公共addButton
,以防其他开发人员尝试改变它的行为。