1 回答

TA贡献1853条经验 获得超18个赞
我希望我理解正确——即您有一个复选框,并且在每个输入上,该值都存储在 cookie 中。在页面加载时,您提取 cookie 值并将其设置为复选框。一切正常,除了当您执行 AJAX 请求并加载整个内容时。
这似乎更像是一个 javascript 问题(而不是 PHP)。
在页面加载时,您已经根据 cookie 值将复选框标记为选中。但是,当您执行 AJAX 请求时,您会拉取复选框,并且不再调用负责设置复选框值的 javascript 代码(即 checkbox.prop('checked', +$.cookie(checkboxCookieName)) )。
您需要做的是调用:
checkbox.prop('checked', +$.cookie(checkboxCookieName));
在完成 ajax 请求和注入 HTML 之后
Woocommerce 有这三个事件:
updated_wc_div updated_cart_totals updated_shipping_method
我不完全理解你想要做什么,但你必须根据你的需要将你的代码挂钩到其中之一。这样做的方法是(例如使用 updated_cart_totals):
$(document).on('updated_cart_totals', function(){
checkbox.prop('checked', +$.cookie(checkboxCookieName));
});
希望它有用。
- 1 回答
- 0 关注
- 123 浏览
添加回答
举报