使用 Javascript 动态构建 CAML
我正在寻找在 JavaScript 中创建 CAML 构建器的函数或代码片段或一些入门帮助。
构建嵌套 OR 应该不是问题,例如 (pid == 101 || pid == 102 || pid == 105) 这只是将两个一组包装在标签中的情况。与 AND 类似。
我遇到困难的地方是在同一查询中组合 OR 和 AND。通常,我们会有一系列下拉框或复选框供用户选择。他们可以选择不选择某些字段,这就是为什么我需要动态构建 CAML,而不是准备好将其注入到适当的位置。
编辑: 这是我到目前为止所拥有的 http://jsfiddle.net/QSPj2/4/
到目前为止,它只构建一系列 OR或一系列 AND。您传入一个对象数组。每个对象都有字段、比较、类型和值。 CAML 构建器将采用该数组并生成正确嵌套的 AND 或 OR。在输出 CAML 上使用 Dreamweaver 格式化工具或类似工具以使其更易于阅读。
尝试将 AND 与 OR 结合起来会变得更加棘手。
I'm looking for a function or code snippet or some starting help in creating a CAML builder in JavaScript.
Building nested ORs shouldn't be a problem, e.g. (pid == 101 || pid == 102 || pid == 105)
It's just a case of wraping groups of two in tags. Similar for AND.
Where I'm struggiling is combining ORs and ANDs in the same query. Generally we will have a series dropdown boxes or checkboxes the user selects from. They can choose the not select certain fields which is why I need to build the CAML dynmically rather than have it ready to go and just inject the values into the appropriate places.
EDIT:
Here's what I have so far
http://jsfiddle.net/QSPj2/4/
So far it only builds either a series of ORs or a series of ANDs. You pass in an array of objects. Each object has field, comparison, type and value. The CAML builder will take this array and generate properly nested ANDs or ORs. Use Dreamweaver formatting tool or similar on the output CAML to make it easier to read.
It gets going to get a lot more tricky trying to combine ANDs with ORs.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
SharePoint EcmaScript Caml Builder
SharePoint EcmaScript Caml Builder