Я ищу функцию или фрагмент кода или некоторую начальную помощь в создании CAML-компоновщика в JavaScript.
Построение вложенных OR не должно быть проблемой, например (pid == 101 || pid== 102 || pid == 105) Это просто случай переноса групп по два в теги.Аналогично для AND.
Я борюсь за то, чтобы объединить OR и AND в одном запросе.Как правило, у нас будет выпадающий список или флажки, выбранные пользователем.Они могут выбрать не выбранные определенные поля, поэтому мне нужно построить CAML динмически, а не готово к работе и просто ввести значения в соответствующие места.
РЕДАКТИРОВАТЬ: Вот что у меня есть до сих пор http://jsfiddle.net/QSPj2/4/
Пока что он строит только серию OR или серию AND.Вы передаете массив объектов.Каждый объект имеет поле, сравнение, тип и значение.Построитель CAML возьмет этот массив и сгенерирует правильно вложенные AND или OR.Используйте инструмент форматирования Dreamweaver или аналогичный для выходного CAML, чтобы его было проще читать.
Намного сложнее будет пытаться объединить AND и OR.