Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/473.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Caml生成器查询在代码中不起作用_Javascript_Sharepoint 2013_Caml_Csom - Fatal编程技术网

Javascript Caml生成器查询在代码中不起作用

Javascript Caml生成器查询在代码中不起作用,javascript,sharepoint-2013,caml,csom,Javascript,Sharepoint 2013,Caml,Csom,我有麻烦了!我有一个sharepoint网站,其中有一个照片库列表照片库。我需要查询此列表并从指定的galleryfolder中带回图像。我开发了一个带有“选择”菜单的web部件,可加载此照片库中的所有galeriesfolders。然后,当我选择一个特定的galleryfolder时,一个模式会显示该galleryfolder中的图像。但我无法恢复正确的结果。查询只返回列表中所有galleriesfolders的列表。不返回任何图像。但有趣的是,当我停止浏览器并用文件夹值复制查询并将其粘贴到C

我有麻烦了!我有一个sharepoint网站,其中有一个照片库列表照片库。我需要查询此列表并从指定的galleryfolder中带回图像。我开发了一个带有“选择”菜单的web部件,可加载此照片库中的所有galeriesfolders。然后,当我选择一个特定的galleryfolder时,一个模式会显示该galleryfolder中的图像。但我无法恢复正确的结果。查询只返回列表中所有galleriesfolders的列表。不返回任何图像。但有趣的是,当我停止浏览器并用文件夹值复制查询并将其粘贴到Caml query Helper中时,查询工作正常!我的问题是:

var camlQ = new SP.CamlQuery();

camlQ.set_viewXml("<Where><And><Eq><FieldRef Name=\"ContentType\" /><Value Type=\"Text\">Image</Value></Eq><Contains><FieldRef Name=\"FileRef\" /><Value Type=\"Text\">" + VALUE_FROM_OPTION + "</Value></Contains></And></Where>");

var clientCtx = new SP.ClientContext.get_current();
this.results = clientCtx.get_web().get_lists().getByTitle("PHOTO_GALLERY_NAME").getItems(camlQ);

clientCtx.load(this.results);

clientCtx.executeQueryAsync(Function.createDelegate(this, function(sender, args){

    // SOME CODE

}), Function.createDelegate(this, function(sender, args){

    // SOME CODE

}));

您的CAML查询似乎是正确的,但SP.CamlQuery.set_view方法接受根元素为的xml,并且还需要视图查询元素

因此,将Where块包装在查询元素中,然后包装在视图元素中,例如:

var query=new SP.CamlQuery();
query.set_viewXml('<View Scope="RecursiveAll"><Query><Where><Eq><FieldRef Name="FSObjType" /><Value Type="Integer">1</Value></Eq></Where></Query></View>');