You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Contact Form 7能否点击定价表按钮自动选中下拉框对应值?

点击定价套餐按钮自动选中Contact Form 7对应下拉选项实现方法

现有代码适配说明

你当前的Starter套餐按钮标签缺失开头的<,先补全标签,同时给Business、Pro两个档位的按钮也加上相同规则的data-value属性,属性值必须和CF7下拉菜单里的选项文本完全一致,参考代码:

<!-- Starter套餐按钮 -->
<button data-value="Starter Paket" class="favorite styled" type="button">
   Starter
</button>

<!-- Business套餐按钮 -->
<button data-value="Business Paket" class="favorite styled" type="button">
   Business
</button>

<!-- Professional套餐按钮 -->
<button data-value="Professional Paket" class="favorite styled" type="button">
   Pro
</button>

你现有的CF7表单代码不需要做任何修改,下拉字段的选项值已经和三个套餐做了一一对应,直接用就行。

添加交互脚本

把下面的JS代码添加到站点的自定义脚本位置(WordPress后台外观自定义的额外JS栏、代码片段插件的JS添加模块都可以),就能实现点击按钮自动选中对应下拉选项的效果,还附带了平滑滚动到表单、选中后短暂高亮下拉框的体验优化:

document.addEventListener('DOMContentLoaded', () => {
  const planButtons = document.querySelectorAll('.styled.favorite[data-value]')
  planButtons.forEach(btn => {
    btn.addEventListener('click', () => {
      const selectedPlan = btn.dataset.value
      const planDropdown = document.querySelector('select[name="menu-892"]')
      if (!planDropdown) return
      // 赋值选中对应套餐
      planDropdown.value = selectedPlan
      // 平滑滚动到表单位置
      planDropdown.closest('.wpcf7-form').scrollIntoView({
        behavior: 'smooth',
        block: 'center'
      })
      // 高亮提示选中成功,2秒后取消高亮
      planDropdown.style.boxShadow = '0 0 0 2px #2563eb'
      setTimeout(() => {
        planDropdown.style.boxShadow = 'none'
      }, 2000)
    })
  })
})

避坑提示

  • 按钮上data-value的内容必须和CF7下拉里的选项文字完全一样,空格、大小写、特殊符号都不能差,不然选不中
  • 要是你之后改了CF7下拉字段的name(当前是menu-892),记得同步改JS里select[name="menu-892"]对应的name值,不然脚本找不到下拉框
  • 如果同一个页面放了好几个CF7表单,最好给这个选套餐的表单加个专属class,把脚本的查找范围限定在这个表单里,避免误改其他表单的下拉值

内容的提问来源于stack exchange,提问作者GM8

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 16:06:25