iT邦幫忙

DAY 8
7

鐵之 Just Do Lotus Notes系列 第 8

Using JavaScript to get the path

在Web使用JavaScript在靈活度及動態上面一定是比公式強上許多,我們就來看看怎樣改善我們的程式寫法及增進效能囉.
再網頁上的設計誰不用到JavaScript?幾乎都可能用到,但大部分都是用公式@WebDbName或是舊式寫法@ReplaceSubstring( @Subset ( @DBName; -1 ); "\\"; "/")來獲取路徑再做其他的處理.有時為了給JavaScript應用,使用公式讀取後再給JavaScript應用這樣感覺有畫蛇添足的意味也會佔Server 效能.
以下提供兩段程式讓大家應用,第01段程式可能會比較常見getDBPath()可以直接獲得路徑,第02段程式分別示範了Agent URL、Design URL、Direct URL三種獲取路徑的方式.或許可以在改良成參數化的萬用路徑函式.
[第01段程式]

function getDBPath() {
var pathname = window.location.pathname;
var iPos = window.location.pathname.toString().toLowerCase().lastIndexOf('.nsf');
if (iPos > 0) return pathname.substring(0, iPos + 4);
return pathname;
}

[第02段程式]

protocol = window.location.protocol ;
var pathname = window.location.pathname;
var design= pathname.substring(pathname.lastIndexOf('/')+1);
var webdbname = pathname.substring(1,(pathname.lastIndexOf('.nsf')+4));
// Agent URL
var url=protocol+ "//"+window.location.host+"/"+webdbname+"/ActionListener?OpenAgent"
alert("Agent URL "+url);
// Design URL
var url=protocol+ "//"+window.location.host+"/"+webdbname+"/"+design
alert("Design URL "+url);
// Direct URL
var url=protocol+ "//"+window.location.host+"/"+webdbname+"?logout&redirectTo="+"/"+webdbname+"/"+Design
alert("Direct URL "+url);

上一篇
使用Web Service取得即時匯率
下一篇
使用Eclipse執行Web Services 提供的方法及測試
系列文
鐵之 Just Do Lotus Notes41

尚未有邦友留言

立即登入留言