javascript - 如果在 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_ 对字段进行过滤,但我无法让它工作,也找不到一个明确的例子来说明如何做到这一点。
有人可以告诉我如何将函数连接到名字、姓氏和电子邮件帐单字段的更改事件吗?能否请您告诉我如何将数据输入到字段中?
解决方案
$('#billing_email')
不起作用的原因是,在 WooCommerce 为页面生成 HTML 之前,JavaScript 已在页面标题中排队。我通过使用在页脚中排队 JavaScript 来修复它
add_action('wp_footer', 'my_php_function_that_enqueues_javascript');
在 PHP 后端。
推荐阅读
- python - Plotly Dash:单个单元格的 data_table 背景颜色
- scons - How to gracefully kill a scons builder when scons is terminated?
- google-sheets - 无法使用 TO_DATE 与 Google 表格中的多列合并
- python - 如何使用 mysql docker 容器运行 pytest?
- visual-studio-code - 如何在 Visual Studio Code 扩展中创建 PROBLEMS 条目?
- mongodb - 如何将两个表与 Deno 和 MongoDB 的聚合连接起来?
- python - 在 Python 中对子集运行 for 循环
- google-apps-script - DriveApp 错误:“很抱歉,发生服务器错误。请稍候,然后重试。”
- sql-server - 如何返回每个部门名称和每个部门的员工人数
- javascript - 在 JavaScript 中拆分字符串并移动到换行符