[英]Why are my new objectStores not being created on existing indexedDB?
[英]Why are new tables being created instead of the same one being refreshed in my HTML file?
我必須怎么做才能在單擊顯示時刷新表? 現在,每當單擊顯示時 ,就會在前一個表的下面創建一個新表。
第一次加載頁面時,我希望在“輸入”字段下顯示整個表(即,整個XML文件(鏈接到XSL文件)),該怎么做?
在IE中(而不是在Firefox中),只要用戶單擊顯示按鈕,輸入部分就會消失,僅顯示具有XML內容的表。 如何讓IE保留輸入字段並在下面顯示表格? 這是我的代碼片段,其中包含所有必不可少的部分……謝謝!
<html>
.........
......
<script type="text/javascript">
function filterTable(f)
{
................
.......
if (moz)
{
...........
....
var proc = new XSLTProcessor();
proc.importStylesheet(stylesheet);
var resultFragment = proc.transformToFragment(xmlDoc, document);
document.getElementById("target4").appendChild(resultFragment);
}
else if (ie)
{
.....
......
value.setAttribute("select", "books/scifi" + filter);
value2.setAttribute("select", sorter);
document.write(xmlDoc.transformNode(stylesheet));
}
}
</script>
<form>
...........
....
<input type="button" value="Display" onClick="filterTable(this.form)"/>
</form>
<body id="target4">
</body>
</html>
在加載文檔后使用write()將覆蓋整個文檔。 也可以使用另一種方法來注入新內容,例如,設置元素的innerHTML(DOM方法在這里不起作用,因為IE不允許在文檔之間移動節點)。
相關評論:
您從中獲得的表的標記
xmlDoc.transformNode(stylesheet)
您必須首先通過此標記創建一個節點:
//create a dummy-wrapper
var wrapper=document.createElement('div');
//insert the markup
wrapper.innerHTML=xmlDoc.transformNode(stylesheet);
//inject the first child into the document
document.getElementById("target4").appendChild(wrapper.firstChild);
//delete the wrapper, we don't need it anymore
delete wrapper;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.