簡體   English   中英

如何從href調用javascript方法?

[英]How to call a javascript method from a href?

我有一個帶有多個菜單項的側面導航菜單,每個菜單項都實現為一個 href 元素,例如:

<li><span><a href="page.jsp">Href text</a></span></li>

每個 href 調用一個具有某些功能的 Jsp 文件; 在瀏覽器中,鏈接看起來有效且正確:如果用戶將鼠標光標移到鏈接上,鼠標光標會變成一只手指指向的手。 被調用的 Jsp 頁面提供了一些輸入元素,用戶可以在其中輸入一些數據並單擊發送按鈕。 這很好用。

現在在一個菜單項中,我希望被調用的 Jsp 頁面立即顯示一些我必須從 servlet 檢索的數據; 這些數據不應通過單擊該頁面中的按鈕來請求,而應在頁面打開時立即顯示。

我已經通過以下方式實現了:

<li><span><a onClick="method(); return false;">Hfref text</a></span></li>

所以當用戶點擊 href 時會調用一個 javascript 方法; 該方法調用servlet,獲取數據並顯示它們,這很有效。 唯一缺少的一點是菜單項似乎處於非活動狀態:當用戶在菜單項上移動鼠標光標時,鼠標光標不會改變。 因此,用戶會假設菜單項文本不可點擊。

我也試過:

<li><span><a href="javascript:method()">Href text</a></span></li>

這確實調用了我的 javascript 方法,但是該方法無法訪問可用的 HTML 元素(當我調用任何 document.getElementById("element") 時它會為 null,如果通過 onClick=method 調用該方法會找到它們。

如何從 href 調用 javascript 方法或 servlet? 或者我怎樣才能使跨度具有與 href 相同的外觀和感覺?

我不是 javascript 專家,但據我所知,您可以使用Document.GetElementById來獲取標簽,並且您可以使用onClick method (在.js文件中),以便在調用href時您可以做任何您想做的事情。 如果您仍然有問題,請告訴我,以便我可以告訴您如何使用代碼執行此操作。

你想用內聯 JS 顯示一個指針嗎?

這是onmouseover一種方式 - 有了這個,您仍然可以保留您的onclick功能:

 <li><span><a onmouseover="this.style.cursor='pointer'" onClick="method(); return false;">Href text</a></span></li>

此外,向鏈接添加樣式以使其更加引人注目。 在這里,我使鏈接看起來像一個按鈕,並且我也在管理onmouseout的樣式。

 <li><span><a style="color: white; background-color: blue; padding: 10px; font-weight: bold;" onmouseover="this.style.cursor='pointer'; this.style.color='yellow'; this.style.backgroundColor='red';" onClick="method(); return false;" onmouseout="this.style.color='white';this.style.backgroundColor='blue';">Href text</a></span></li>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM