首页 > 解决方案 > 如果在 woocommerce 字段中输入的值发生更改,如何调用函数

问题描述

我们有一个使用 WooCommerce 的 WordPress 网站。我对 WooCommerce 非常缺乏经验。

在结帐页面的账单明细下,用户必须填写他们的名字和姓氏,以及他们的电子邮件地址。

如果这三个字段中的任何一个字段中的数据发生了变化,我需要调用一个函数。在此功能中,我需要检查是否所有 3 个字段都已完成,然后我需要将信息发送到服务器。

如何连接到这 3 个字段的“onchange”事件?

我尝试使用“change_woocommerce_field_markup”添加一个可以触发事件的 HTML 元素,但到目前为止还没有运气。

我尝试将以下内容添加到页面上运行的 javascript 中,但从未触发该事件:

var email_field = $('#billing_email')
email_field.on('change', function () {
    console.log("email changed");
});

我尝试使用 woocommerce_form_field_ 对字段进行过滤,但我无法让它工作,也找不到一个明确的例子来说明如何做到这一点。

有人可以告诉我如何将函数连接到名字、姓氏和电子邮件帐单字段的更改事件吗?能否请您告诉我如何将数据输入到字段中?

标签: javascriptphpwordpresswoocommerce

解决方案


$('#billing_email')不起作用的原因是,在 WooCommerce 为页面生成 HTML 之前,JavaScript 已在页面标题中排队。我通过使用在页脚中排队 JavaScript 来修复它

add_action('wp_footer', 'my_php_function_that_enqueues_javascript');

在 PHP 后端。


推荐阅读