0

Sharepoint のリストと、いくつかのフォルダーがあります。JavaScript を使用してこれらのフォルダーの内容にアクセスする必要があり、列 AddData の日付が現在の日付と等しい項目のみをフォルダーを選択するのが最善です。私はあなたに助けを求めたいです。私がそれを得ることができた唯一のものは次のとおりです。

 context = SP.ClientContext.get_current();
 var web = context.get_web();
 list = context.get_web().get_lists().getByTitle("ExchangeRateList");
 var camlString =
    "<View><ViewFields>" +
        "<FieldRef Name='Title' />" +
        "<FieldRef Name='Modified' />" +
        "<FieldRef Name='Created' />"+
    "</ViewFields></View>";

    var camlQuery = new SP.CamlQuery();
    camlQuery.View
    camlQuery.set_viewXml(camlString);
    allAnnouncements = list.getItems(camlQuery);
    var enumerator = allAnnouncements.getEnumerator();
    while (enumerator.moveNext()) {
            var announcement = enumerator.get_current();
            var title = announcement.get_item("Title")
    ...

お知らせは私のフォルダーですが、このフォルダーからアイテムを取得するにはどうすればよいですか? AddData 列を確認しますか?

4

1 に答える 1

0
  • CAML Today 要素を指定して、現在の日付をサーバーのローカル タイム ゾーンに相対的な形式でレンダリングします。
  • フォルダの下にアイテムを含めるように設定Scope="RecursiveAll"しますView element

クエリ

<View Scope="RecursiveAll"> 
      <Query>
          <Where>
             <Eq>
                  <FieldRef Name="AddData" />  
                  <Value Type="DateTime">   
                    <Today />   
                  </Value>   
             </Eq>
          </Where>   
     </Query>
</View>

var listTitle = 'Announcements';

  var context = new SP.ClientContext.get_current();
  var web = context.get_web();
  var list = web.get_lists().getByTitle(listTitle);
  var listItems = list.getItems(createQuery());


  context.load(listItems);
  context.executeQueryAsync(
     function() {

        var c = listItems.get_count();  
        for(var i = 0; i< c;i++ ) {
          var listItem = listItems.getItemAtIndex(i);
          console.log(listItem.get_item('Title')); 
          //...
        }  
     },
     function(sender,args){
        console.log(args.get_message());
     }
  );



  function createQuery()
  {
    var qry = new SP.CamlQuery();
    qry.set_viewXml('<View Scope="RecursiveAll"> \
                        <Query>  \
                           <Where>  \
                             <Eq>   \
                               <FieldRef Name="AddData" />  \
                               <Value Type="DateTime">   \
                                 <Today />   \
                               </Value>   \
                             </Eq>  \
                           </Where>   \
                        </Query>  \
                     </View>');
    return qry;
  }
于 2014-05-18T19:58:04.550 に答える