
- XML DOM 基礎
- XML DOM - 首頁
- XML DOM - 概述
- XML DOM - 模型
- XML DOM - 節點
- XML DOM - 節點樹
- XML DOM - 方法
- XML DOM - 載入
- XML DOM - 遍歷
- XML DOM - 導航
- XML DOM - 訪問
- XML DOM 操作
- XML DOM - 獲取節點
- XML DOM - 設定節點
- XML DOM - 建立節點
- XML DOM - 新增節點
- XML DOM - 替換節點
- XML DOM - 刪除節點
- XML DOM - 克隆節點
- XML DOM 物件
- DOM - Node 物件
- DOM - NodeList 物件
- DOM - NamedNodeMap 物件
- DOM - DOMImplementation
- DOM - DocumentType 物件
- DOM - ProcessingInstruction
- DOM - Entity 物件
- DOM - EntityReference 物件
- DOM - Notation 物件
- DOM - Element 物件
- DOM - Attribute 物件
- DOM - CDATASection 物件
- DOM - Comment 物件
- DOM - XMLHttpRequest 物件
- DOM - DOMException 物件
- XML DOM 有用資源
- XML DOM - 快速指南
- XML DOM - 有用資源
- XML DOM - 討論
DOM - DOMException 物件
DOMException 表示在使用方法或屬性時發生的異常事件。
屬性
下表列出了 DOMException 物件的屬性
序號 | 屬性及描述 |
---|---|
1 | name 返回一個 DOMString,其中包含與錯誤常量關聯的字串之一(如下表所示)。 |
錯誤型別
序號 | 型別及描述 |
---|---|
1 | IndexSizeError 索引不在允許的範圍內。例如,這可能由 Range 物件丟擲。(舊版程式碼值:1 和舊版常量名稱:INDEX_SIZE_ERR) |
2 | HierarchyRequestError 節點樹層次結構不正確。(舊版程式碼值:3 和舊版常量名稱:HIERARCHY_REQUEST_ERR) |
3 | WrongDocumentError 物件在錯誤的文件中。(舊版程式碼值:4 和舊版常量名稱:WRONG_DOCUMENT_ERR) |
4 | InvalidCharacterError 字串包含無效字元。(舊版程式碼值:5 和舊版常量名稱:INVALID_CHARACTER_ERR) |
5 | NoModificationAllowedError 無法修改物件。(舊版程式碼值:7 和舊版常量名稱:NO_MODIFICATION_ALLOWED_ERR) |
6 | NotFoundError 在此處找不到物件。(舊版程式碼值:8 和舊版常量名稱:NOT_FOUND_ERR) |
7 | NotSupportedError 不支援該操作。(舊版程式碼值:9 和舊版常量名稱:NOT_SUPPORTED_ERR) |
8 | InvalidStateError 物件處於無效狀態。(舊版程式碼值:11 和舊版常量名稱:INVALID_STATE_ERR) |
9 | SyntaxError 字串與預期模式不匹配。(舊版程式碼值:12 和舊版常量名稱:SYNTAX_ERR) |
10 | InvalidModificationError 無法以這種方式修改物件。(舊版程式碼值:13 和舊版常量名稱:INVALID_MODIFICATION_ERR) |
11 | NamespaceError XML 中的名稱空間不允許此操作。(舊版程式碼值:14 和舊版常量名稱:NAMESPACE_ERR) |
12 | InvalidAccessError 物件不支援該操作或引數。(舊版程式碼值:15 和舊版常量名稱:INVALID_ACCESS_ERR) |
13 | TypeMismatchError 物件的型別與預期型別不匹配。(舊版程式碼值:17 和舊版常量名稱:TYPE_MISMATCH_ERR)此值已棄用,現在引發 JavaScript TypeError 異常而不是具有此值的 DOMException。 |
14 | SecurityError 操作不安全。(舊版程式碼值:18 和舊版常量名稱:SECURITY_ERR) |
15 | NetworkError 發生網路錯誤。(舊版程式碼值:19 和舊版常量名稱:NETWORK_ERR) |
16 | AbortError 操作已中止。(舊版程式碼值:20 和舊版常量名稱:ABORT_ERR) |
17 | URLMismatchError 給定的 URL 與另一個 URL 不匹配。(舊版程式碼值:21 和舊版常量名稱:URL_MISMATCH_ERR) |
18 | QuotaExceededError 配額已超出。(舊版程式碼值:22 和舊版常量名稱:QUOTA_EXCEEDED_ERR) |
19 | TimeoutError 操作超時。(舊版程式碼值:23 和舊版常量名稱:TIMEOUT_ERR) |
20 | InvalidNodeTypeError 節點不正確或對於此操作具有不正確的祖先。(舊版程式碼值:24 和舊版常量名稱:INVALID_NODE_TYPE_ERR) |
21 | DataCloneError 無法克隆物件。(舊版程式碼值:25 和舊版常量名稱:DATA_CLONE_ERR) |
22 | EncodingError 編碼操作(編碼或解碼)失敗(無舊版程式碼值和常量名稱)。 |
23 | NotReadableError 輸入/輸出讀取操作失敗(無舊版程式碼值和常量名稱)。 |
示例
以下示例演示了使用格式不正確的 XML 文件如何導致 DOMException。
error.xml 內容如下所示:
<?xml version = "1.0" encoding = "UTF-8" standalone = "no" ?> <Company id = "companyid"> <Employee category = "Technical" id = "firstelement" type = "text/html"> <FirstName>Tanmay</first> <LastName>Patil</LastName> <ContactNo>1234567890</ContactNo> <Email>tanmaypatil@xyz.com</Email> </Employee> </Company>
以下示例演示了name 屬性的使用方法:
<html> <head> <script> function loadXMLDoc(filename) { if (window.XMLHttpRequest) { xhttp = new XMLHttpRequest(); } else // code for IE5 and IE6 { xhttp = new ActiveXObject("Microsoft.XMLHTTP"); } xhttp.open("GET",filename,false); xhttp.send(); return xhttp.responseXML; } </script> </head> <body> <script> try { xmlDoc = loadXMLDoc("/dom/error.xml"); var node = xmlDoc.getElementsByTagName("to").item(0); var refnode = node.nextSibling; var newnode = xmlDoc.createTextNode('That is why you fail.'); node.insertBefore(newnode, refnode); } catch(err) { document.write(err.name); } </script> </body> </html>
執行
將此檔案另存為伺服器路徑上的domexcption_name.html(此檔案和 error.xml 應位於伺服器上的同一路徑)。我們將獲得如下所示的輸出:
TypeError