報表軟件JS開發引用HTML DOM的location和document對象

上一次提到,在報表軟件FineReport的JavaScript開發中,能夠訪問並處理的HTML DOM對象有windows、location、document三種。此次就繼續介紹後兩種,location和document對象。javascript

 

Locationhtml

Location 對象包含有關當前 URL 的信息。 Location 對象是 Window 對象的一個部分,可經過 window.location 屬性來訪問。java

location對象的經常使用屬性windows

hash         設置或返回從#開始的URL數組

host          設置或返回主機名和當前URL的端口號瀏覽器

hostname     設置或返回當前URL的主機名緩存

href          設置或返回完整的URL服務器

pathname     設置或返回當前URL的路徑部分cookie

port          設置或返回當前URL的端口號框架

search        設置或返回從?開始的URL(查詢部分)

 

1.location對象的reload()方法

reload()方法用於從新加載當前文檔

語法爲:

location.reload(false)

若是該方法沒有規定參數,或者參數是 false,它就會用 HTTP 頭 If-Modified-Since 來檢測服務器上的文檔是否已改變。若是文檔已改變,reload() 會再次下載該文檔。若是文檔未改變,則該方法將從緩存中裝載文檔。這與用戶單擊瀏覽器的刷新按鈕的效果是徹底同樣的。

若是把該方法的參數設置爲 true,那麼不管文檔的最後修改日期是什麼,它都會繞過緩存,從服務器上從新下載該文檔。這與用戶在單擊瀏覽器的刷新按鈕時按住 Shift 健的效果是徹底同樣。

 

Document

每一個載入瀏覽器的HTML 文檔都會成爲Document對象。Document 對象使咱們能夠從腳本中對HTML頁面中的全部元素進行訪問。

Document 對象是 Window 對象的一部分,可經過 window.document 屬性對其進行訪問

 

1.document對象的經常使用屬性

cookie      設置或返回當前文檔有關的全部cookie

title        返回當前文檔的標題

URL        返回當前文檔的URL

 

2.document對象的經常使用方法

2.1 close()方法

close() 方法可關閉一個由 document.open 方法打開的輸出流,並顯示選定的數據。語法:

document.close()

該方法將關閉 open() 方法打開的文檔流,並強制地顯示出全部緩存的輸出內容。

 

若是使用 write() 方法動態地輸出一個文檔,必須記住這麼作的時候要調用 close() 方法,以確保全部文檔內容都能顯示。

一旦調用了 close(),就不該該再次調用 write(),由於這會隱式地調用 open() 來擦除當前文檔並開始一個新的文檔。

 

2.2 getElementByID()方法

getElementById() 方法可返回對擁有指定 ID 的第一個對象的引用。語法:

document.getElementById(id)



 

參考完整代碼:

<html>  
<head>  
<script type="text/javascript">  
function getValue()  
{  
var x=document.getElementById("myHeader")  
alert(x.innerHTML)  
}  
</script>  
</head>  
<body>  
   
<h1 id="myHeader" onclick="getValue()">這是標題</h1>  
<p>點擊標題,會提示出它的值。</p>  
   
</body>  
</html>

2.3 getElemenByName()方法

getElementsByName() 方法可返回帶有指定名稱的對象的集合。

該方法與 getElementById() 方法類似,可是它查詢元素的 name 屬性,而不是 id 屬性。

由於一個文檔中的 name 屬性可能不惟一(如 HTML 表單中的單選按鈕一般具備相同的 name 屬性),全部getElementsByName() 方法返回的是元素的數組,而不是一個元素。

getElementsByTagName() 方法可返回帶有指定標籤名的對象的集合。

getElementsByTagName() 方法返回元素的順序是它們在文檔中的順序。

若是把特殊字符串 "*" 傳遞給 getElementsByTagName() 方法,它將返回文檔中全部元素的列表,元素排列的順序就是它們在文檔中的順序。

傳遞給 getElementsByTagName() 方法的字符串能夠不區分大小寫。

 

2.4write()方法

write() 方法可向文檔寫入 HTML 表達式或 JavaScript 代碼。 可列出多個參數(exp1,exp2,exp3,...) ,它們將按順序被追加到文檔中。

語法:

document.write(exp1,exp2,exp3,....)

一般按照兩種方式使用 write() 方法:

一是在使用該方法在文檔中輸出 HTML,另外一種是在調用該方法的的窗口以外的窗口、框架中產生新文檔。

第二種狀況中,請務必使用 close() 方法來關閉文檔。

示例:



 

參考代碼:

Js代碼 

<html>  
<body>  
   
<script type="text/javascript">  
document.write("Hello World! ","Hello You! ","<p style='color:blue;'>Hello World!</p>")  
</script>  
   
</body>  
</html>
相關文章
相關標籤/搜索