WooCommerce支付网关自定义javascript冲突

WooCommerce支付网关自定义javascript冲突,javascript,html,jquery,woocommerce,stripe-payments,Javascript,Html,Jquery,Woocommerce,Stripe Payments,我遇到了一个JS冲突问题,这是由一个自定义jQuery脚本引起的,该脚本在签出更新后更改文本。如果包含此脚本,my WooCommerce网站上的条带支付网关将不允许输入信用卡和借记卡字段 我仍然希望脚本运行,但不知道如何解决/避免冲突,因此目前,我不得不省略它。有人知道为什么下面的内容会引起冲突吗 jQuery(文档).ready(函数(){ jQuery('body')。在('updated_checkout',function()上{ var replaced=jQuery(“.wooc

我遇到了一个JS冲突问题,这是由一个自定义jQuery脚本引起的,该脚本在签出更新后更改文本。如果包含此脚本,my WooCommerce网站上的条带支付网关将不允许输入信用卡和借记卡字段

我仍然希望脚本运行,但不知道如何解决/避免冲突,因此目前,我不得不省略它。有人知道为什么下面的内容会引起冲突吗


jQuery(文档).ready(函数(){
jQuery('body')。在('updated_checkout',function()上{
var replaced=jQuery(“.woocommerce checkout#order#u review.product info.variation dd.variation-Extras p”).html()。替换('Booking Fee×1(£0.00-一次性),'Booking Fee(£0.00)';
jQuery(“.woocommerce checkout#order#u review.product info.variation dd.variation-Extras p”).html(已替换);
});
});

在WooCommerce签出中,元素类
产品信息
不存在,而正确的元素类是
产品名称

此外,在尝试对其使用
replace()
方法之前,还应始终检查目标html元素对象是否存在且未定义

因此没有javascript冲突,但是抛出了一个jQuery错误,该错误禁用了一些jQuery进程:

未捕获的TypeError:无法读取未定义的属性“replace”

并且它禁用所有在此之后执行的jQuery进程

请改用以下重新访问的代码:


jQuery(函数($){
$(document.body).on('updated_checkout',function(){
var varExtrasObj=$('.woocommerce checkout#order#u review.product name.variation dd.variation-Extras p'),
varExtrasObjHtml=varExtrasObj.html();
if(varExtrasObjHtml!==未定义){
var stingToReplace='预订费×1(0.00英镑-一次),',
更换费用='预订费(£0.00)',
theReplacement=varExtrasObjHtml.replace(stingToReplace,stingReplacement);
html(替换);
}
});
});

它现在应该可以正常工作了,不会给分期付款带来麻烦。

这看起来是个好建议。这不是我的问题,只是表示我同意你的建议:)但是,是的,完全可以接受答案。很多人错过了这一步:(我不是问问题的人。我只是喜欢你的答案。@NolanH Oups抱歉:)谢谢!嘿@LoicTheAztec,谢谢你的回复。这解决了一个问题,谢谢你的帮助。下面的一些反馈将不胜感激。