2017-04-04 72 views
1

我知道如何使用HTML和JavaScript如何在SAPUI5中使用錨標籤進行導航?

<h2 id="C4">Chapter 4</h2> 
<a href="#C4">Jump to Chapter 4</a> 

這是我在SAPUI5我試圖做的。點擊返回頂部鏈接,它應該導航到helpButton。這不適合我。

<Button id="helpButton" icon ="sap-icon://sys-help" /> 
<Link text="Back to top" 
     press="#helpButton"/> 

回答

2

你實際上可以在UI5中做到這一點。與你嘗試的方式有點不同。

問題是UI5 ID與HTML ID不同(這是你想用於瀏覽器的哈希鏈接跳到那裏)。另外,您不能在鏈接的press「屬性」中指定URL。 press「屬性」實際上是一個事件(因此您只能指定事件處理程序名稱)。

所以爲了能夠做到你想要的,你必須使用鏈接的href屬性,並用目標控件的HTML ID填充它。 (當你能夠找到目標控制的HTML ID這是)你可以做到這一點的onAfterRendering掛鉤的觀點:

onAfterRendering: function() { 
    var oRef = this.byId("target").getDomRef(); 
    this.byId("link").setHref("#" + oRef.id); 
} 

你可以在這裏找到工作小提琴:https://jsfiddle.net/93mx0yvt/26/