Dom-domexception-object
DOM-DOMExceptionオブジェクト
_DOMException_は、メソッドまたはプロパティが使用されるときに発生する異常なイベントを表します。
プロパティ
以下の表に、DOMExceptionオブジェクトのプロパティを示します
S.No. | Property & Description |
---|---|
1 |
name エラー定数に関連付けられた文字列の1つを含むDOMStringを返します(下の表を参照)。 |
エラーの種類
S.No. | Type & Description |
---|---|
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)この値は廃止され、この値を持つDOMExceptionの代わりにJavaScript TypeError例外が発生するようになりました。 |
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>[email protected]</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_namel_としてサーバーパスに保存します(このファイルとerror.xmlはサーバーの同じパスにある必要があります)。 次のように出力を取得します-
TypeError