我正在使用一个具有新用户注册表格的WordPress网站。我想将下拉列表国家的默认值设置为美国。当前,下拉列表选择第一个选项作为默认选项。 html元素看起来像这样(这不是整个元素,只是其中的一部分):
<select name="wwlc_country" id="wwlc_country"><option value="AX">Åland Islands</option><option value="AF">Afghanistan</option><option value="AL">Albania</option><option value="US">United States (US)</option>
我正在使用一个名为“ WooCommerce Wholesale Lead Capture”的插件,在他们的支持网站上,他们建议将以下代码添加到我主题的functions.php文件中:
// Change the default country on WooCommerce Wholesale Lead Capture's registration
function wwsSetRegistrationDefaultCountry() {
if ( is_page( 'wholesale-registration-page' ) ) {
?>
<script type="text/javascript">
jQuery(document).ready(function () {
jQuery('select#wwlc_country').val('AU');
jQuery('select#wwlc_country').trigger('change');
});
</script>
<?php
}
}
add_action( 'wp_footer', 'wwsSetRegistrationDefaultCountry', 99 );
我尝试在is_page函数中使用正确的页面添加此页面,但是无论我将哪个国家/地区设置为该值,该页面仍默认为第一个值。当我查看页面源代码时,我看到该脚本正在页面上运行,并且如果我在控制台中运行该脚本,该脚本也可以工作。有什么想法为什么我在加载页面时实际上不起作用?
更新:所以我解决了这个问题,以防将来有人遇到此问题。我启用了一个名为“ Autoptimize”的插件,其中一项设置阻止代码在站点上运行。我禁用了插件,刷新后下拉菜单的默认值设置为美国。
答案 0 :(得分:0)
您需要将jQuery('select#wwlc_country').val()
一侧的文本更改为您希望默认使用的value
的{{1}}。
在您的情况下为美国。因此,您需要将其更改为option
。您还可以将这两个函数链接在一起(而不是每次都从一个新的jQuery对象中调用它们)。
$("select#wwlc_country").val("US").change();