【问题标题】:How can I dynamically update 'src' in <script src=> in Squarespace如何在 Squarespace 的 <script src=> 中动态更新“src”
【发布时间】:2018-10-26 20:31:44
【问题描述】:

我试图将 url 参数抓取到 Squarespace 中的 Zoho 表单中,以用于 Google 跟踪。我制作了一个自定义函数来获取参数并将其添加到 url。最后的警报只是为了表明它设置正确。但我无法添加带有变量“站点”的表单。

<script type="text/javascript"> 
    function getUrlVars() {
        var vars = {};
        var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {
            vars[key] = value;
        });
        return vars;
    }
    var campaign = getUrlVars()["campaign"];
    var site = "https://forms.zohopublic.com/....wj7Q?campaign="+campaign;
      var scriptElement = document.createElement('script');
      scriptElement.type = "text/javascript";
      scriptElement.src = site;
      scriptElement.id = "ZFScript";
      document.head.appendChild(scriptElement);
      alert(decodeURI(campaign));
      alert(site);
      alert(scriptElement.src);
      alert(scriptElement.type);
      alert(scriptElement.id);
</script>

所以最后我只需要运行

<script type="text/javascript" src=site id="ZFScript"></script>

但我无法让它编写一个 src 等于站点变量的新脚本。

【问题讨论】:

  • 也许可以试试 scriptElement.setAttribute('src',site) ?或 scriptElement.src = '"' + site + '"' 或类似的东西

标签: javascript url parameters squarespace zoho


【解决方案1】:

如果你只使用 javascript,你几乎得到了 @Julesezaar 评论,我用这样的东西来补充它:

document.getElementById('ZFScript').setAttribute('src',site);

你就完成了。

【讨论】:

  • 感谢您的回复。我删除了'scriptElement.src = site;'并在 'scriptElement.id = "ZFScript";' 之后添加您的代码并且表单仍然没有出现,并且它现在没有触发该行之后的任何内容,例如警报。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-12
  • 2017-12-05
  • 1970-01-01
相关资源
最近更新 更多