suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Wie übergebe ich eine Funktion an eine dynamisch erstellte href?

Ich möchte eine Funktion an das href-Attribut meines A-Tag-Links übergeben, aber egal, was ich versuche, es funktioniert nicht. Es führt entweder zu einer 404-Seite oder ist einfach nicht anklickbar. Was habe ich falsch gemacht?

Dies ist nicht anklickbar

<body>
<a id="specialLink" href="#" onClick="redirectToApp()">点击我</a>
<script>
document.getElementById('specialLink').href = redirectToApp();
function redirectToApp () {
    return "http://www.google.com";
} 
</script>
</body>

Dies ist nicht anklickbar

<body>
<a href="#" onClick="document.location.href=redirectToApp()">点击我</a>
<script>
function redirectToApp () {
    return "http://www.google.com";
} 
</script>
</body>

Dies führte zu einer 404-Seite

<body>
<a href="javascript:document.location.href=redirectToApp();">点击我</a>
<script>
function redirectToApp () {
    return "http://www.google.com";
} 
</script>
</body>

Ich sollte wahrscheinlich auch klarstellen, dass ich diesen HTML-Code per E-Mail an die Stelle schicke, an der sich der Link öffnen soll, und wenn ich die URL nicht einfach als String an die href übergebe, funktioniert nichts.

P粉571233520P粉571233520435 Tage vor1085

Antworte allen(1)Ich werde antworten

  • P粉788571316

    P粉7885713162023-09-23 00:45:10

    你可以尝试这样做:

    const anchor = document.getElementById('specialLink')
    anchor.addEventListener((e) => {
        e.preventDefault()
        window.open("https://google.com");
    
    })

    并且移除锚点标签上的 onClick 属性

    Antwort
    0
  • StornierenAntwort