【SharePoint】日付と時刻列で30分単位で選択肢を表示する【JavaScript】

2019年7月27日

こんにちは。
たまに30分や15分単位でのみ時刻を選択してほしいことなどありませんでしょうか。
SharePointは5分刻みで選択肢が存在するので、
これを実現するためにはカスタマイズが不可欠です。

今回はちょっとSPOと関係ない気がしますが、一応載せておこうかなと・・・

  // 時間の選択肢を30分単位に変更
  $("#【StartTime】").parent ().parent ().children (1).find ("[id*=\"$DateTimeFieldDateMinutes\"]").empty ().append('<option selected="selected" value="00">00</option><option value="30">30</option>');
  $("#【EndTime】").parent ().parent ().children (1).find ("[id*=\"$DateTimeFieldDateMinutes\"]").empty ().append('<option selected="selected" value="00">00</option><option value="30">30</option>');

解説

はい。これだけです。
1行でかけます。

簡単に説明しますと、既定の選択肢を削除し、新たに”00″と”30″の選択肢を作成しているだけです。
もうSharePointというよりJavascriptの記事になっちゃってます。。。(笑)

1点気をつけなければならないことがあります。
編集フォームにこの機能を実装すると、選択されていないような表示となってしまいます。
つまり、30分を選択していたアイテムを編集しようとしても、
選択肢を一旦全て削除するため、00を選択していることになります。
これだけ注意してください。

今回は小技ということで以上となります。
僕以外のSharePointのブログ書いてる人はどういうスタンスで記事書くのが一般的なのでしょうね。
僕は基本的にカスタマイズ関連だけですがSPOの機能も触れていこうかな。。。

それではまた。。。