2011-07-15 21 views
0

林我的代碼我從一個AJAX頁面的值不顯示,但它顯示在不同的位置比我希望顯示。我想展示它..從AJAX頁面這個responseText在預定的位置

<tr><td>hello</td></tr> 
<tr id="showajax"><td>Ajax Value is:</td><div id="ajaxhide"></div></tr> 

這裏返回的ajax值顯示在別的地方。

我曾使用的document.getElementById( 'ajaxhide')的innerHTML = xmlhttp.responseText。裏面的JavaScript也適當。 返回阿賈克斯值是這樣

 echo '<td>'."Thanks".'</td>'; 

回答

2

那麼第一件事情就是你要動態調整表。將單元格創建爲空以開始並更新內容會更好。

你也得到了一些無效的語法與<div id="ajaxhide"></div>浮動任何表格單元格之外,但錶行內。這不只是這將無法通過驗證,並且每個瀏覽器可能有不同的對待它,而且當你正在做的內容改變你要插入的div中的單元格(這在技術上並不容許),這是一個內部行(這在技術上也是不允許的)。

的解決方案是使用:

<tr id="showajax"><td>Ajax Value is:</td><td id="ajaxhide"></td></tr> 

現在讓AJAX更新:

document.getElementById('ajaxhide').innerHTML=xmlhttp.responseText; 

警告在Internet Explorer

IE認爲COLCOLGROUP一個字, TABLETBODYTFOOTTHEADTR爲只讀。這意味着你可以更新單元(TDTH),而不是整個行,而不是整個表。在你上面的例子中,你並沒有試圖這麼做......但是如果你的設計發生變化,只要意識到這個限制。