gpt4 book ai didi

javascript - 防止Ajax触发jQuery脚本

转载 作者:行者123 更新时间:2023-12-01 01:08:31 25 4
gpt4 key购买 nike

我们在 Drupal 站点上获得了一个简单的 jQuery 脚本,它注入(inject)了一个包含内容的 div 类:

(function($) {
Drupal.behaviors.myHelpText = {
attach: function (context, settings) {

//code starts

//change placeholder text

$('.form-item-quantity').append('<span class="help-block">For orders over 10 call for volume pricing</span>');
$('.help-block').css("flex-basis", "100%");

//code ends

}
};
})(jQuery);

该页面具有 Drupal Commerce 和各种产品属性字段,每次选择属性时都会由 Ajax 处理这些字段。当这样做时,我们的脚本每次在 Ajax 加载/更新时都会注入(inject)相同的重复行。

如何避免这种情况?我们只希望 jQuery 代码在页面加载时工作一次。

enter image description here

最佳答案

仅在元素不存在时添加该元素,否则不执行任何操作。

(function($) {
Drupal.behaviors.myHelpText = {
attach: function (context, settings) {

if (!document.getElementById('help')) {
$('.form-item-quantity').append(
'<span id="help" class="help-block">For orders over 10 call for volume ricing</span>'
);
$('.help-block').css("flex-basis", "100%");
}

}
};
})(jQuery);

关于javascript - 防止Ajax触发jQuery脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55379607/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com