- - PR -
DOMのselectNodesでXPathに変数を使いたい
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2002-01-22 22:42
VBScriptでDOMを使用して、
name属性の属性値が「あああ」のelement要素の値を取り出そうとしています。 以下のように書いてみたところ「オブジェクトがありません」というエラーがでます。 typename="あああ" MyStr=doc.documentElement.selectNodes("//element[@name=typename]").item(0).text そこで、 MyStr=doc.documentElement.selectNodes("//element[@name=$typename]").item(0).text としたところ、 「必要なトークン'$'が'='を検出しました」というエラーがでます。 うまくVBScriptの変数をXPathに使う方法は無いのでしょうか。 ご存知の方がおりましたら教えてください。 |
|
投稿日時: 2002-01-22 22:52
selectNodes() のカッコ内に入る XPath 式を、事前に (一部ではなく) まるごと
文字列変数として生成しておいてから、MyStr= のところで、その文字列変数を selectNodes() のカッコ内で指定するという方法では駄目ですか ? XPath 式の一部だけを変数化しようとしてトラブっているように見えるのですが。 _________________ www.kojii.net |
|
投稿日時: 2002-01-23 13:05
しばらくVBSをいじってないし、試したわけではないので、間違っているかもしれませんが、
文字列の結合演算子(&)を使えばOKだと思います。 strA = "AAA" strB = "BBB" のとき、 strC = strA & strB で、strC = "AAABBB" となるはずです。 具体的には、 "//element[@name=typename]" を "//element[@name=" & typename & "]" です。 |
|
投稿日時: 2002-01-23 13:05
[ メッセージ編集済み 編集者: GUNNM 編集日時 2002-01-23 20:43 ] |
1