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.yrequestScope.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";
}