JS根据URL修改填充联系人表单下拉列表

时间:2019-01-28 08:59:28

标签: javascript wordpress

在构建网站时,我尝试使用适用于CF7的动态文本插件来填充基于先前网站的字段。

但是,虽然它显示了所需的URL(在加载了联系页面后从商品传递到联系页面“ www.webpage.com/contact?offer1”,但下拉菜单不会显示所需的选项。

基本上

在报价页面上>按“立即联系”按钮>将CF7带有预先填写的报价字段。

使用Calluna主题和WP 4.9.9

我尝试在wordpress中使用动态选择扩展名,并且使用了简码来选择,但它不起作用。最好用“ if if else”语句代替它。这样的东西可以工作吗?

$(document).ready(function () {
    if(window.location.href.contains("?offer1") -1) {
       select("offer1");
    }

    if else(window.location.href.contains("?offer2") -1) {
       select("offer2");
    }    

    if else(window.location.href.contains("?offer3") -1) {
       select("offer2");
    }  

    if else(window.location.href.contains("?offer4") -1) {
       select("offer2");
    }

    else{
       select("Angebote");
    } 

 });

1 个答案:

答案 0 :(得分:0)

这不是浪费。使用以下内容;

$(document).ready(function () {

  var matchedData = window.location.href.match(/\?(offer(\d))/);

  if (matchedData) {
    select(matchedData[1]);
    return;
  }

  // default behaviour
   select("Angebote");
 });

..当您需要映射操作时的情况:

$(document).ready(function () {

  var matchedData = window.location.href.match(/\?(offer(\d))/);
  var actionsMap = new Map([["offer3", "offer2"], ["offer4", "offer2"]])

  if (matchedData) {
    var actionName = actionsMap.get(matchedData[1]) || matchedData[1];
    select(actionName);
    return;
  }

  // default behaviour
  select("Angebote");
 });