我碰到其中一個第三方組件似乎與Response.Write
會干擾和內Response.Write("")
造成任何內容之前任何其他的HTML渲染的問題。例如:Response.Write和<%= %>之間的實際區別是什麼?
<html><head><title><% Response.Write("HELLO WORLD") %>
將呈現爲
HELLO WORLD<html><head>...
但是,使用<%= %>
塊呈現任何內容,將工作正確。下面的代碼將很好地工作:
<html><head><title><%="HELLO WORLD"%>
我一直以爲<%=
只是簡寫Response.Write
。從我已經能夠找到MSDN我現在明白了,這是<%=
最終轉換到的Response.Write,但顯然有一些步驟其間。
有沒有人猜測爲什麼兩個會呈現不同或指向我的一些文檔/信息,說明如何處理<%= %>
塊?
更新:導致該問題的控件是從2009年Q1發佈的Telerik AjaxManager控件。升級到Q2控制解決了問題。
不幸的是我沒有訪問源代碼,所以我一直無法弄清楚爲什麼控制是造成這種行爲。問題已經解決,但我仍然很好奇爲什麼它首先存在。
哪個第三方組件您使用的? – madcolor 2009-08-27 16:28:49
這個問題還真沒有什麼意義......永遠不要發生在我身上... – voyager 2009-08-27 16:32:02
@voyager,我完全同意;這沒有意義。我會質疑我的理智,但另一個開發者已經能夠在他的本地機器上覆制行爲(同一個項目)。 @madcolor很多Telerik控件(ajax,模式彈出框,網格); – 2009-08-27 16:57:35