2014-07-23 30 views
0

問題 - 我有一個帶有子div的多個div的頁面,並且在其中一個子div中,我打電話給server.execute。 在IE調試器中看到的IE10,IE11的html輸出看起來不錯,但對於IE9我得到了server.execute的輸出分爲兩部分,這導致頁面呈現不正確。 頁面源代碼看起來是一樣的。Server.Execute的使用導致IE9不正確的html生成

詳情 - ASPX頁面佈局是這樣的 - ....

<form id="mainform"> 
... 
... 
<div id="main" > 
    <div id="child1" > 
    </div> 
    <div id="child2" > 
     <div id="child22" > 
      Server.Execute("abc.aspx", StringWriterObj, True) 
      Response.Write(StringWriterObj) 
     </div> 
    </div> 
    <div id="child3" > 
    </div> 
</div> 
</form> 

從查看源看到的HTML輸出看起來是我沒有工具比較相似。 但是IE瀏覽器解釋的HTML輸出在IE9和IE10中不同。 對於IE 10,調試器只顯示一個ID爲「main」的div元素,如上面的代碼所示。但對於IE9,調試器顯示了相同的id「主」爲空兩種div元素 -

頁DOM所看到的調試器IE10 -

<form id="mainform"> 
... 
... 
<div id="main" > 
    <div id="child1" > 
    </div> 
    <div id="child2" > 
     <div id="child22" > 
      <Element1> 
      <Element2> 
     </div> 
    </div> 
    <div id="child3" > 
    </div> 
</div> 
</form> 

頁DOM在調試器看到了IE9 -

<form id="mainform"> 
... 
... 
<div id="main" > 
    <div id="child1" > 
    </div> 
    <div id="child2" > 
     <div id="child22" > 
      <Element1> 
     </div> 
    </div> 
</div> 
</form> 
<div id="main" > 
    <div id="child2" > 
     <div id="child22" > 
      <Element2> 
     </div> 
    </div> 
    <div id="child3" > 
    </div> 
</div> 

如在上面的輸出中可以看出對於IE9在div id爲「主」的形式爲標籤中存在的和外面以及與包含元素部分地從所謂的在使用Server.Execute()頁和日e調用頁面中的下一個元素。

我希望問題清楚。 任何人都面臨類似的問題。任何提示或想法都會非常有幫助。 謝謝

+0

缺少一個asp標籤? – aland

回答

0

上面的問題在我刪除了由上面的Server.Execute方法調用的abc.aspx頁面中的html表單標記後得到解決。