【问题标题】:Javascript conditional to change url on anchor tagJavascript有条件更改锚标记上的url
【发布时间】:2020-09-16 20:26:29
【问题描述】:

我有登陆页面,您可以在其中选择国家/地区以更改语言。 它有一个链接,您可以在其中请求演示。此链接是带有 mailto url 的锚标记。 我需要根据我之前选择的语言更改 mailto url。 这是我的 index.html:

<div class="c-navigation__language">
      <div class="c-language__trigger" onclick="languageOptions($(this))">
        <i id="languageSelected" class="flag flag-16 flag-ar"></i>AR<i class="fa fa-caret-down"></i>
      </div>
      <div class="c-language">
        <a href="#ar" class="c-language__option is-select" title="Argentina" alt="Argentina" data-iso="ar"><i class="flag flag-16 flag-ar"></i> AR</a>
        <a href="/pt#br" class="c-language__option" title="Brasil" alt="Brasil" data-iso="br"><i class="flag flag-16 flag-br"></i> BR</a>
        <a href="/en#us" class="c-language__option" title="E.E.U.U." alt="E.E.U.U." data-iso="us"><i class="flag flag-16 flag-us"></i> US</a>
      </div>
    </div>
    <div class="c-navigation__menu">
      <a href="mailto:default@defaultmail.com" onclick="changeEmailAdress(); return false;" target="_blank" class="cta cta--accent">Solicitar Demo</a>
    </div>

所以我创建了一个 JavaScript 函数“changeEmailAdress()”:

function changeEmailAdress(){
var languageSelected = document.getElementById("languageSelected");
  if (languageSelected.value == "AR")
    languageSelected.setAttribute('href',"mailto:ar@mail.com");
  else if(languageSelected.value == "US"){
    languageSelected.setAttribute('href',"mailto:us@mail.com");
  }
}

此功能不起作用,但我无法理解原因。

选择的语言,例如“AR”“US”,也显示在网站的url:“www.site.com/es/#AR”,所以我也想过从网站上获取那些字符url 并从那里设置条件。有可能吗?

【问题讨论】:

  • (languageSelected.textContent == "AR") - 不是value

标签: javascript html url anchor


【解决方案1】:

function changeEmailAdress(a){
  document.getElementById("mailto")
  .setAttribute(
    'href', "mailto:"+a.textContent.toLowerCase()+"@mail.com");
};
<a href="#" onclick="changeEmailAdress(this)">AR</a>
<a href="#" onclick="changeEmailAdress(this)">BR</a>
<a href="#" onclick="changeEmailAdress(this)">US</a>
<a id="mailto" href="mailto:default@defaultmail.com" target="_blank">Solicitar Demo</a>

【讨论】:

    猜你喜欢
    • 2011-04-29
    • 1970-01-01
    • 2013-06-21
    • 1970-01-01
    • 2011-07-19
    • 2011-09-21
    • 2011-11-12
    • 1970-01-01
    相关资源
    最近更新 更多