ASP+XML SelectNodes
страница на asp. На ней форма поиска.
Связываю базу через Microsoft.XMLDOM
Есть код
-----------------------
set NodeList=qqq.SelectNodes("GL[NAME[@FIO='"&fio&"']]")
.....................
-------------------------
где qqq корневой элемент, GL -дочерний элемент, NAME-дочерний GL, FIO-аттрибут, fio-переменная в которой находится содержимое INPUT.
в NodeList сохраняет элементы если значение аттрибута точно совпадает со значением fio (введенного в input ). Как сделать чтобы в NodeList сохранял элементы если fio только часть значения FIO.
Допустим xml ...
<GL><NAME FIO="QQQFFFQQQ"/></GL>
<GL><NAME FIO="AAAFFFQQQ"/></GL>
<GL><NAME FIO="BBBFFFQQQ"/></GL>
<GL><NAME FIO="CCCFFFQQQ"/></GL>
сохранил бы все элементы если в INPUT введено тока FFFQQQ???.
Знаю что в синтаксисе используется вместо "=" еще и $eq$ $ne$ $lt$ $le$ $gt$ $ge$ $ieq$ $ine$ $ilt$ $ile$ $igt$ $ige$ но они не помагают.
Цитата:
Originally posted by qqq_first
Здравствуйте. Есть база в xml.
страница на asp. На ней форма поиска.
Связываю базу через Microsoft.XMLDOM
Есть код
-----------------------
set NodeList=qqq.SelectNodes("GL[NAME[@FIO='"&fio&"']]")
.....................
-------------------------
где qqq корневой элемент, GL -дочерний элемент, NAME-дочерний GL, FIO-аттрибут, fio-переменная в которой находится содержимое INPUT.
в NodeList сохраняет элементы если значение аттрибута точно совпадает со значением fio (введенного в input ). Как сделать чтобы в NodeList сохранял элементы если fio только часть значения FIO.
Допустим xml ...
<GL><NAME FIO="QQQFFFQQQ"/></GL>
<GL><NAME FIO="AAAFFFQQQ"/></GL>
<GL><NAME FIO="BBBFFFQQQ"/></GL>
<GL><NAME FIO="CCCFFFQQQ"/></GL>
сохранил бы все элементы если в INPUT введено тока FFFQQQ???.
Знаю что в синтаксисе используется вместо "=" еще и $eq$ $ne$ $lt$ $le$ $gt$ $ge$ $ieq$ $ine$ $ilt$ $ile$ $igt$ $ige$ но они не помагают.
Здравствуйте. Есть база в xml.
страница на asp. На ней форма поиска.
Связываю базу через Microsoft.XMLDOM
Есть код
-----------------------
set NodeList=qqq.SelectNodes("GL[NAME[@FIO='"&fio&"']]")
.....................
-------------------------
где qqq корневой элемент, GL -дочерний элемент, NAME-дочерний GL, FIO-аттрибут, fio-переменная в которой находится содержимое INPUT.
в NodeList сохраняет элементы если значение аттрибута точно совпадает со значением fio (введенного в input ). Как сделать чтобы в NodeList сохранял элементы если fio только часть значения FIO.
Допустим xml ...
<GL><NAME FIO="QQQFFFQQQ"/></GL>
<GL><NAME FIO="AAAFFFQQQ"/></GL>
<GL><NAME FIO="BBBFFFQQQ"/></GL>
<GL><NAME FIO="CCCFFFQQQ"/></GL>
сохранил бы все элементы если в INPUT введено тока FFFQQQ???.
Знаю что в синтаксисе используется вместо "=" еще и $eq$ $ne$ $lt$ $le$ $gt$ $ge$ $ieq$ $ine$ $ilt$ $ile$ $igt$ $ige$ но они не помагают.
Отвечу сам себе:
нужно использовать конструкцию типа
set NodeList=qqq.SelectNodes("GL[NAME[contains(@FIO,'"&fio&"')]]")
предварительно создать объект MSXML2.DOMDocument и установить property
myxml.setProperty "SelectionLanguage", "XPath"