代码之家  ›  专栏  ›  技术社区  ›  Castro Roy

magento javascript对象

  •  0
  • Castro Roy  · 技术社区  · 14 年前

    在mage_adminhtml_block_customer_edit_tab_cart中,在_prepareColumns()函数中,他们添加了一列用于操作,您可以看到

    'onclick' =>  'return ' . $this->getJsObjectName() . 'cartControl.removeItem($item_id);'
    

    所以我试着用我的定制模块做同样的事情,

    'onclick' =>  'return ' . $this->getJsObjectName() . 'comentarioControl.removeItem($item_id);'
    

    但是我所得到的只是noticia_comentario_grid10jsObjectComentarioControl没有定义错误,所以,我在哪里可以定义它,我不理解

    谢谢

    1 回复  |  直到 14 年前
        1
  •  1
  •   Alana Storm    14 年前

    许多magento管理用户界面是通过将每个php ui对象与客户端ui对象配对来实现的。价值从 getJsObjectName 将用作javascript变量名的一部分。

    如果您要覆盖和/或继承这个类,那么您有责任确保相应的客户端代码已经就位。在不同版本的平台中,完成的方式各不相同。我想用这个方法来解决你的问题

    1. 在没有自定义模块的系统中查看未修改的mage_adminhtml_block_customer_edit_tab_cart

    2. 确定什么 GETJS对象名称 返回1的上下文

    3. 在代码库中搜索2中的字符串。这将向您展示Magento系统工程师如何向页面添加所需的客户端代码,并允许您在模块中执行相同的操作。