2013-08-07 45 views
0

我想實現將adsense代碼存儲到sql數據庫的功能。爲此,我在文本框上使用了ajax:HtmlEditorExtender。現在我打字這個代碼如何從文本框中獲取javascript/html代碼

<script type="text/javascript"><!-- google_ad_client = "ca-pub-*****"; /* 728x90, created 6/12/02 */ google_ad_slot = "****"; google_ad_width = 728; google_ad_height = 90; //--> </script> <script type="text/javascript" src="http://pagead.googlesyndicaon.com/pead/show_ad.js"> </script> 

現在當代碼被插入到數據庫中,上述代碼被如下轉換的問題是。

&lt;pre&gt;&lt;<span>script</span> <span>type</span>="<a>text/javascript</a>"&gt;&lt;!-- 
    <span></span>google_ad_client = "ca-pub-*****"; 
    <span></span>/* 728x90, created 6/12/02 */ 
    <span></span>google_ad_slot = "****"; 
    <span></span>google_ad_width = 728; 
    <span></span>google_ad_height = 90; 
    <span></span>//--&gt; 
    <span></span>&lt;/<span>script</span>&gt; 
    <span></span>&lt;<span>script</span> <span>type</span>="<a>text/javascript</a>" 
    <span></span><span>src</span>="<a href="view-source:http://pagead.googlesyndicaon.com/pead/show_ad.js"> 
http://pagead.googlesyndicaon.com/pead/show_ad.js</a>"&gt; 
    <span></span>&lt;/<span>script</span>&gt;&lt;/pre&gt; 

請幫我:

  1. 我應該做的,這樣我可以存儲上的代碼,因爲它是數據庫。
  2. 當代碼正確存儲到數據庫中,這是控制最適合顯示廣告。(我的意思是我想告訴另一頁上的廣告。)

在此先感謝。

+1

你在使用洗手液嗎?只要確定。爲什麼不使用ckeditor? –

+0

@PaulZahra:使用EnableSanitization =「true」可以解決我的第一個問題。非常感謝。我應該爲我的第二個問題做些什麼。 –

+0

@PaulZahra對不起我的錯誤。使用EnableSanitization =「true」並沒有什麼區別。這也是圍繞這樣的每個文本。 腳本

回答

1

RE問題2:您可以使用正常的文本框,只需解碼字符串,或將其放回到ajax:HtmlEditorExtender文本框中,並使用以下代碼(清潔工可能編碼了所有標籤的開始和結束等等...

Server.HtmlDecode(TextBox_Editor.Text) 

在回答您的評論:嘗試將解碼後的文成ASP:標籤的OnPreRender

編輯:嘗試使用HtmlAgilityPackSanitizerProvider,從而解決了一些「錯誤」周圍的消毒液的最新包...有閱讀this page,斯蒂芬沃爾特斯自己承認,默認的殺菌劑太過侵略了在它剝奪的東西。

+0

我想你讓我錯了。實際上,我想在不同的網頁上展示廣告,其AdSense代碼來自數據庫。那麼我應該使用哪個控件,以便檢索的代碼可以顯示爲廣告。 –

+0

感謝@PaulZahra你建議的方法真的有幫助。再次感謝。 –

相關問題