我的WordPress主题与WooCommerce交互,因此当用户从下拉菜单中选择特定的产品变量时,会显示其区域的特定价格。模拟鼠标点击下拉菜单
这工作正常,当用户手动选择下拉,但是,我试图通过基于浏览器cookie(或缺少一个)为用户预先选择适当的选项来加速该过程。
例如,如果用户还没有进入他们的区域他们的浏览器将不会有我命名“PC-进入”和下面的jQuery脚本将运行的cookie:
$(function() {
$('ul li.product').each(function() {
/*If no region set by cookie*/
if(document.cookie.indexOf("pc-entered=") < 0) {
/*Set downdown to generic*/
$(this).find("#pa_region").val('generic');
}
});
});
这工作,自动成功预先选择正确的“通用”下拉选项。
不幸的是,这是我卡住的地方 - 虽然下拉是正确的,但价格并不像自动填充区域时那样自动填充。
E.g.
1)当使用我的脚本自动填充:
2)当用户选择:
我试着在我的脚本替换这个:
$(this).find("#pa_region").val('generic');
然而,在this thread上列出的选项,它们在这种情况下似乎不起作用。我也尝试在页面上的所有其他脚本之后触发脚本,甚至延迟脚本运行超时功能,但似乎没有任何工作。
我的测试网站是here。
TLDR -为什么我的jQuery脚本没有填充价格?
感谢你的理解,我只是在改变HTML。快速的问题,在你的JSFiddle中,通过点击按钮来触发该功能。如何在页面加载时触发该功能,同时保留现有的每个功能? – Dan382
如果我正确地理解了你,你可以在document.ready函数中添加触发器。 https://jsfiddle.net/2rkkb3jh/4/ – Dino