Magento - 自定义模块,可在输入后立即捕获用户电子邮件

时间:2011-10-31 18:42:56

标签: magento

在自定义扩展程序中,我想我可能想要捕获用户的电子邮件地址,因为他们在可以输入的各个位置输入(结帐,创建帐户,登录)。我可能不会,如果我做了......

我认为最好的方法是注入一段JavaScript,但我不知道该怎么做。我想我需要在布局文件中指定一个块?也许吧,

应用程序/设计/前端/碱/默认/布局/ mymodule.xml

<default>
    <reference name="before_body_ends">
        <block type="mymodule/myblock" name="not sure" as="not sure" />
    </reference>
</default>

并且在块类中,_toHtml()方法可以返回一些将事件处理程序[onchange]添加到电子邮件地址字段的JavaScript,并且事件处理程序的实现对传递e-的控制器进行了AJAX调用输入的邮件地址。

我认为上面的布局类会导致在每个页面中注入JavaScript。我只希望它包含一个包含电子邮件地址输入字段的那些。我应该创建什么样的布局文件(位置,名称和内容)。

我浏览了演示站点并查看了输入电子邮件地址的页面的来源。电子邮件地址字段的ID在每种情况下都不同,因此JavaScript必须考虑到这一点。

非常感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

如果您只想在每个页面上包含.js文件,则应将其添加到page.xml:

<layout>
    <default>
        <reference name="root">
           <action method="addJs"><script>relative/path/from/js/folder</script></action>
        </reference>
    </default>
</layout>

等待dom加载并设置你的javascript观察者。