getPrefixes (NamespaceContext - JavaScript)

複数のプレフィックスを取得します。

定義場所

NamespaceContext

構文

getPrefixes() : java.util.Iterator

getPrefixes(name:string) : java.util.Iterator

パラメータ 説明
name 名前空間コンテキストの URI。このパラメータを省略すると、 すべてのプレフィックスが対象になります。このパラメータを指定すると、 この URI を持つすべてのプレフィックスが対象になります。
戻り値 説明
java.util.Iterator 一致するプレフィックス。URI が 存在しない場合は NULL。

使用法

単一の名前空間コンテキストで複数のプレフィックスが 同じ URI を持つことができます。
java.util.Iterator クラスには 以下のメソッドがあります。
メソッド 説明
public boolean hasNext() 反復時にさらにエレメントがある場合は true を返します。
public Object next() 反復における次のエレメントを返します。
public void remove() イテレータによって返された最後のエレメントを削除します。

例

(1) このボタンは、名前空間コンテキストの すべてのプレフィックスと対応する URI を表示します。名前空間コンテキスト (sessionScope.ns) と 表示域 (requestScope.y と requestScope.msg) は、 ページの別の個所で定義されているグローバル変数です。
if(sessionScope.ns != null) {
	requestScope.y = "Namespaces";
	var p = sessionScope.ns.getPrefixes();
	while(p.hasNext()) {
		var np = p.next();
		requestScope.y = requestScope.y + "¥n¥t" +
			np + " = " + ns.getNamespaceURI(np);
	}
} else {
	requestScope.msg = "No namespaces";
}
(2) このボタンは、URI が http://mynamespace.com である すべてのプレフィックスを表示します。
if(sessionScope.ns != null) {
	requestScope.y = "Namespaces";
	var p = sessionScope.ns.getPrefixes("http://mynamespace.com");
	while(p.hasNext()) {
		var np = p.next();
		requestScope.y = requestScope.y + "¥n¥t" +
			np + " = " + ns.getNamespaceURI(np);
	}
} else {
	requestScope.msg = "No namespaces";
}