跟踪表单提交情况
如果您的网站上有表单,Yandex Metrica 可以向您展示用户填写表单的频率。 根据表单的实现方式,您可以跟踪按钮点击和表单提交。
为此,您需要在 Yandex Metrica 中设置一个特殊目标。 您可以创建以下目标类型:
- 针对您网站上的所有表单。
- 针对特定的表单。 例如,使用此方法跟踪不同的表单。
要手动创建目标:
-
在 Yandex Metrica 中,转到左侧菜单中的 Goals 页面。
-
点击 Add goal。
-
在 Name 字段中,输入要创建的目标的名称。
-
选择 Form submission 目标类型。
-
选择要为其创建目标的表单。 如果您选择 Specific form,在字段中输入放置表单的网页,然后点击 Go and select a form。 在打开的窗口中,Yandex Metrica 突出显示在页面上找到的表单。 选择您需要的一个表单。
为什么表单选择可能不可用 -
点击 Add goal。 创建的目标将出现在目标列表中。 Yandex Metrica 将在几分钟内开始收集统计数据。
-
查看目标是否正确运作。
注意
在广告中使用此类目标前,请核查目标是否设置正确,以及是否能在您的网站上达成。 如果您更改了网站的 HTML 结构,目标可能无法正常工作。
当用户点击表单提交按钮时,即会统计为目标完成。 要查看目标统计数据,请使用 Conversions 报表并添加目标到其他 Yandex Metrica 报表。
如果 Yandex Metrica 在您的网站上找到表单
元素以及一些表单参数(如 ID
、名称
或该元素的 XPATH
路径),即可识别出网站上的表单。 添加目标时,Yandex Metrica 会显示已识别的参数。 它指示目标是针对哪个表单创建的 - 您可能会发现在目标列表中区分 Yandex Metrica 目标很方便。 在检查目标的实现情况时,不会考虑该表单是在哪个页面上选择的。
了解更多有关 XPATH 的信息
XPATH
是一种查询语言,您可用它来定位 XML 和 HTML 文档中的特定元素。 您可以用它来指定特定元素或元素组的路径。
<html>
<body>
<div class="container">
<p>First paragraph.</p>
<ul>
<li>First element of the list.</li>
<li>Second element of the list.</li>
</ul>
<p>Second paragraph.</p>
</div>
</body>
</html>
要定位列表中的第二个元素 (<li>
),请使用以下 XPATH
查询:
//HTML/BODY/DIV/UL/LI[2]
网站要求
创建目标时,重要的是要考虑:
- 表单必须使用
form
标签创建。如果表单是用div
计数器创建的,则不会被跟踪。 - 表单必须使用
button type="submit"
和input type="submit"
元素来提交。 如果通过button type="button"
元素实现表单提交,则无法达成目标。 button type="submit"
和input type="submit"
元素必须嵌套在form
元素。
如果使用 JavaScript 处理表单,则目标仅适用于标准 onSubmit
事件。
数据验证
默认情况下,不仅当表单成功提交时,而且当尝试发送表单失败时(例如,当表单中的数据未通过验证时)也视为已实现目标。
如果您希望仅将表单提交计入目标完成情况,而不计入 click
或 submit
事件:
- 在数据验证之前将
disabled
属性添加到按钮代码。 - 使用 CSS 使按钮处于非活动状态。 在这种情况下,如果在按钮停用之前在网站上检查了脚本,那么
click
事件可能会被计入。
提示
如果您无法重新配置网站上 HTML 元素的工作,请使用 JavaScript 事件目标。
限制
-
此目标类型不能用于多步骤目标。
-
该服务统计每秒在同一计数器上达成相同目标的次数不超过一次的用户。
-
在单个用户会话期间,该服务最多可为计数器登记 1000 次离线转化和 400 次在线转化。
-
如果您在页面中使用 iframe,可能会导致其无法按预期运行。
-
如果您编辑计数器或目标,之前收集的所有信息都不会改变。
-
如果您删除目标,报表中将不再提供为该目标收集的信息。
问题与解答
如何选择隐藏在按钮下的表单?
如果该按钮在表单选择模式下处于活动状态,请先点击它,然后选择一个表单。
有时,当您选择某个按钮时,您无法点击它。 在这种情况下,请执行以下操作:
-
在 Form submission 目标设置中,选择 Exact form on website 并指定包含该表单的页面。
-
点击 Go and select a form。
-
在打开的页面上,将鼠标悬停在按钮上,右键点击上下文菜单,然后选择 Explore element。
-
Elements 选项卡将选择所需的按钮代码。 右键单击打开上下文菜单并选择 Copy → Copy selector。
-
打开 Console 选项卡并输入
document.querySelector('xxxx').click();
,其中xxxx
是您复制的值。 如果一切都正确完成,所需的表单会在页面上突出显示。 -
选择表单并确认您的选择。
如何将目标添加到 iframe 中的表单?
如果表单位于 iframe
,在 iframe
代码中配置计数器。 创建目标时,需要在表单地址字段中指定 iframe
地址。
该计数器安装在包含该表单的页面上,但未创建目标。 为什么?
您可以为过去 30 天内具有流量的页面的表单设置目标。 确保您的计数器记录了包含该表单的页面的流量(检查筛选条件、地址设置等)。
如果表单尚未提交,为什么会触发目标?
如果表单具有检查其填写有效性的功能,那么即使有人试图发送无效的表单,目标也会被统计为已实现。 在这种情况下,我们建议查看针对此目标的 converted session。
如果同一个表单在多个页面上使用,是否会收集统计数据?
如果在不同页面上使用具有相同 ID
的表单,那么创建的目标将在所有页面上运行。
如果没有 Session Replay,该表单是否会运作?
如果计数器设置中未启用 Session Replay,则目标可以在没有它的情况下运作。
先前版本的计数器代码的目标是否会运作?
该目标可能适用于以前版本的计数器代码。
如果设置了 "Replace https with http" 筛选条件,表单是否运作?
如果在计数器设置中启用 Change from https to http(在 Filters 选项卡上),那么表单选择模式不起作用。
该表单是否支持重定向?
如果您要选择表单的页面重定向到另一个页面,则表单选择不可用。 您可以创建一个目标来跟踪所有表单或使用 JavaScript 事件目标 跟踪特定表单的提交。
为什么我看不到表单选择?
Yandex Metrica 仅突出显示过去 30 天内访问过的页面上的表单选择。
如果您的网站使用内容安全政策,并将 Yandex Metrica 域添加到例外列表。