搜尋

首頁  >  問答  >  主體

如何將函數傳遞給動態建立的 href?

我想要把一個函數傳遞給我的a標籤連結的href屬性,但無論我嘗試什麼都不起作用。它要么導致404頁面,要么根本無法點擊。我做錯了什麼?

這個是不可點擊的

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

這個是不可點擊的

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

這個導致了一個404頁面

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

我可能還應該說明一下,我是透過電子郵件發送這個HTML,連結應該在其中打開,除非我只是將URL作為字串傳遞給href,否則什麼都不起作用。

P粉571233520P粉571233520526 天前1176

全部回覆(1)我來回復

  • 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 屬性

    回覆
    0
  • 取消回覆