2009-06-11 41 views
1

我對存儲在SQL Server數據庫中的顯示URL有疑問。顯示來自SQL Server的URL

這裏是一個例子。
我有一個名爲「Additionalinfo」的表中存儲此信息的字段。

公司名稱
1街道名稱,郊區
博士:0000 0000
寬:http://www.google.com

當我在頁面上顯示該信息,它顯示的信息正常,但是它不」使URL活動。它只是將它顯示爲純文本。

我想是這樣顯示的:

公司名稱
1街道名稱,郊區
博士:0000 0000
寬:http://www.google.com

有什麼辦法我可以在不更改要輸入到數據庫中的文本的情況下使URL處於活動狀態?

任何幫助將不勝感激。

回答

1

你需要以某種方式在URL周圍包裝一個錨標籤()。請在輸入時或在頁面上顯示時進行此操作。如果僅在顯示器上進行操作,則需要一些方法來檢測URL部分。如果您有一個用於填充此列的URL字段,那將是放置該邏輯最簡單的地方。

出於顯示目的,請使用正則表達式。下面是一些例子(未測試的)

http://www.velocityreviews.com/forums/t122843-find-url-in-a-string.html

商店

http://www.google.com

作爲

< A HREF =「http://www.google。 「>http://www.google.com</a>

當我發佈HTML的時候有點壞,但我想你明白了。

+0

我不會存儲標記 - 我會生成它在顯示時間 – 2009-06-11 02:36:43

0

由於您無法更改數據庫中的內容,所以在顯示URL時我會進行替換。檢查數據庫項目是以http://開頭還是基於從數據庫中出來的列,然後用錨標記包裝它。

0

如果要顯示在一個RTF控制的信息就應該使URL「活動」

0

最後一行,做這樣的事情:

litUrl.Text = string.Format(@"W: <a href=""{0}"">{0}</a>", datareader["W"]); 

litUrl是文字控制。當然,這個假設非常像ASP.Net/C#。你真的沒有分享你用來檢索這些數據並把它放在一個頁面上。共享您現有的代碼將非常有幫助。

0

如果您使用的控制器有一個OnItemDataBound事件,您可以在後面的代碼中執行此操作。

Hyperlink test; 
test.NavigateUrl = [item from database]; 
test.Text = [whatever Text]; 
0

你只需把它寫詳細...

傳統的ASP:

Response.Write(theUrl) 
Response.Write("<a href="""+theUrl+""">"+theUrl+"</a>") 

PHP

echo(theUrl); 
echo('<a href="' . theUrl . '">' . theUrl . '</a>'); 

怒吼,如果你想另一種語言...