パッケージ org.opengion.hayabusa.taglib

## クラス DatalistTag

- java.lang.Object
- - javax.servlet.jsp.tagext.TagSupport
  - - javax.servlet.jsp.tagext.BodyTagSupport
    - - org.opengion.hayabusa.taglib.CommonTagSupport
      - - org.opengion.hayabusa.taglib.DatalistTag

- すべての実装されたインタフェース:
    `Serializable`, `javax.servlet.jsp.tagext.BodyTag`, `javax.servlet.jsp.tagext.IterationTag`, `javax.servlet.jsp.tagext.JspTag`, `javax.servlet.jsp.tagext.Tag`, `javax.servlet.jsp.tagext.TryCatchFinally`, `OptionAncestorIF`

      public class DatalistTag
      extends CommonTagSupport
      implements OptionAncestorIF

  フォームの入力欄などで入力候補となるデータリストを定義するHTML拡張タグです。 HTML5 から、新たに追加された要素です。 データリスト内の選択肢は、optionタグ、queryOptionタグによって指定します。 データリスト の id 属性は、フォームの list 属性と同じキーを指定する事で関連付けします。
  関連項目:
    直列化された形式
  変更履歴:
    5.7.1.0 (2013/12/06) 新規追加
  機能分類
    【HTML5】選択データ制御
  形式サンプル:
    ●形式：<og:datalist id="…" /> ●body：あり(EVAL_BODY_INCLUDE:BODYをインクルードし、{@XXXX} は解析しません) ●Tag定義： <og:datalist id ○【TAG】入力候補を表示するフォームの list 属性に設定する id (必須) caseKey 【TAG】このタグ自体を利用するかどうかの条件キーを指定します(初期値:null) caseVal 【TAG】このタグ自体を利用するかどうかの条件値を指定します(初期値:null) caseNN 【TAG】指定の値が、null/ゼロ文字列 でない場合(Not Null=NN)は、このタグは使用されます(初期値:判定しない) caseNull 【TAG】指定の値が、null/ゼロ文字列 の場合は、このタグは使用されます(初期値:判定しない) caseIf 【TAG】指定の値が、true/TRUE文字列の場合は、このタグは使用されます(初期値:判定しない) debug 【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false) > ... Body ... </og:datalist> ●使用例 <og:input type="text" name="tokyo" autocomplete="on" list="tokyo.sel" /> <og:datalist id="tokyo.sel" > <og:option value="渋谷" /> <og:option value="新宿" /> <og:option value="池袋" /> </og:datalist><
  バージョン
    6.0
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK5.0,

- - ### フィールドの概要

    - ### クラスから継承されたフィールド org.opengion.hayabusa.taglib.CommonTagSupport

      `BR, BUFFER_MIDDLE, CR`

    - ### クラスから継承されたフィールド javax.servlet.jsp.tagext.BodyTagSupport

      `bodyContent`

    - ### クラスから継承されたフィールド javax.servlet.jsp.tagext.TagSupport

      `pageContext`

    - ### インタフェースから継承されたフィールド javax.servlet.jsp.tagext.BodyTag

      `EVAL_BODY_BUFFERED, EVAL_BODY_TAG`

    - ### インタフェースから継承されたフィールド javax.servlet.jsp.tagext.IterationTag

      `EVAL_BODY_AGAIN`

    - ### インタフェースから継承されたフィールド javax.servlet.jsp.tagext.Tag

      `EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE`

  - ### コンストラクタの概要

    コンストラクタ
    コンストラクタ | 説明
    --- | ---
    `DatalistTag()` | デフォルトコンストラクター

  - ### メソッドの概要

    すべてのメソッド インスタンス・メソッド concreteメソッド
    修飾子とタイプ | メソッド | 説明
    --- | --- | ---
    `void` | `addOption​(String opt)` | データリストの選択項目を追加します。
    `int` | `doEndTag()` | Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
    `int` | `doStartTag()` | Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
    `String` | `getAddKeyLabel()` | セレクトメニューの場合、キー:ラベル形式で表示するかどうか[true/false/null]を返します。
    `String` | `getValue()` | 値を外部から取り出します。
    `boolean` | `isMultipleAll()` | 複数選択可能時に全選択を設定するかどうかを返します。
    `protected void` | `release2()` | タグリブオブジェクトをリリースします。
    `void` | `removeLast()` | メニュー項目の最後の項目を削除します。
    `void` | `setId​(String id)` | 【HTML】要素に対して固有の名前(id)をつける場合に設定します。
    `void` | `setRawParam​(String param)` | パラメーター変換({@XXXX}の置き換えをしない状態のパラメーターをセットします。
    `String` | `toString()` | このオブジェクトの文字列表現を返します。

    - ### クラスから継承されたメソッド org.opengion.hayabusa.taglib.CommonTagSupport

      `add, add, addEventColumn, addEventColumn, check, commitTableObject, debugPrint, doAfterBody, doCatch, doFinally, get, getApplicationInfo, getAttributes, getBodyRawString, getBodyString, getContextAttribute, getContextPath, getCookie, getCSVParameter, getCSVParameter, getDataCondition, getDateFormat, getDBColumn, getDBFunctionName, getDocumentLink, getGUIInfo, getGUIInfoAttri, getHostName, getLabel, getLabelInterface, getLanguage, getLongLabel, getMsg, getMsglbl, getObject, getParameterNames, getParameterRows, getRequest, getRequestAttribute, getRequestCacheData, getRequestMethod, getRequestParameter, getRequestParameterValues, getRequestValue, getRequestValue, getRequestValues, getReservedParameter, getReservedValue, getResource, getSanitizedBodyString, getScope, getSessionAttribute, getTagName, getTransaction, getUser, getUserEditInfo, getUserInfo, isAjaxSubmitRequest, isDebug, isNoTransitionRequest, isNull, jspPrint, makeUrl, removeContextAttribute, removeObject, removeRequestAttribute, removeSessionAttribute, set, setAjaxSubmitRequest, setCaseIf, setCaseKey, setCaseNN, setCaseNull, setCaseVal, setContextAttribute, setCookie, setDebug, setLanguage, setLbl, setNoTransitionRequest, setObject, setObject, setParameterNames, setParameterRows, setRequestAttribute, setRequestCacheData, setScope, setSessionAttribute, setUserInfo, startQueryTransaction, sys, sysBool, sysInt, useMainTrans, useQuotCheck, useTag, useXssCheck`

    - ### クラスから継承されたメソッド javax.servlet.jsp.tagext.BodyTagSupport

      `doInitBody, getBodyContent, getPreviousOut, release, setBodyContent`

    - ### クラスから継承されたメソッド javax.servlet.jsp.tagext.TagSupport

      `findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setPageContext, setParent, setValue`

    - ### クラスから継承されたメソッド java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### インタフェースから継承されたメソッド javax.servlet.jsp.tagext.Tag

      `getParent, setPageContext, setParent`

- - ### コンストラクタの詳細

    - #### DatalistTag

          public DatalistTag()

      デフォルトコンストラクター
      変更履歴:
        6.4.2.0 (2016/01/29) PMD refactoring. Each class should declare at least one constructor.

  - ### メソッドの詳細

    - #### doStartTag

          public int doStartTag()

      Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
      定義:
        `doStartTag` インタフェース内 `javax.servlet.jsp.tagext.Tag`
      オーバーライド:
        `doStartTag` クラス内 `CommonTagSupport`
      戻り値:
        後続処理の指示( EVAL_BODY_INCLUDE )

    - #### doEndTag

          public int doEndTag()

      Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
      定義:
        `doEndTag` インタフェース内 `javax.servlet.jsp.tagext.Tag`
      オーバーライド:
        `doEndTag` クラス内 `CommonTagSupport`
      戻り値:
        後続処理
      変更履歴:
        5.7.6.2 (2014/05/16) IEのHTML5機能が無効の場合、INDBMENU を作成します。, 6.3.9.0 (2015/11/06) コンストラクタで初期化されていないフィールドを null チェックなしで利用している(findbugs)

    - #### release2

          protected void release2()

      タグリブオブジェクトをリリースします。 キャッシュされて再利用されるので、フィールドの初期設定を行います。
      オーバーライド:
        `release2` クラス内 `CommonTagSupport`

    - #### addOption

          public void addOption​(String opt)

      データリストの選択項目を追加します。 datalist タグのBODY要素の OptionTag よりアクセスされます。
      定義:
        `addOption` インタフェース内 `OptionAncestorIF`
      パラメータ:
        `opt` - オプションタグ文字列
      関連項目:
        `OptionAncestorIF.addOption( String )`

    - #### removeLast

          public void removeLast()

      メニュー項目の最後の項目を削除します。 select タグのBODY要素の OptionTag よりアクセスされます。
      定義:
        `removeLast` インタフェース内 `OptionAncestorIF`
      関連項目:
        `OptionAncestorIF.removeLast()`
      変更履歴:
        6.8.0.0 (2017/06/02) メニュー項目の最後の項目を削除。

    - #### setId

          public void setId​(String id)

      【HTML】要素に対して固有の名前(id)をつける場合に設定します。
      オーバーライド:
        `setId` クラス内 `javax.servlet.jsp.tagext.TagSupport`
      パラメータ:
        `id` - 固有の名前
      説明:
        データリスト の id 属性は、フォームの list 属性と同じキーを指定する事で関連付けします。 ※ 内部事情で、inputタグ(columnタグ)の list属性 に設定するキーも、id属性に設定するキーも、 inputタグ(columnタグ)の name属性＋".sel" を標準的に使用してください。

    - #### getValue

          public String getValue()

      値を外部から取り出します。 OptionTag で、value を取り出して、内部の値と同じ場合は、選択状態にします。
      定義:
        `getValue` インタフェース内 `OptionAncestorIF`
      戻り値:
        null固定
      関連項目:
        `OptionAncestorIF.addOption( String )`
      変更履歴:
        5.7.1.0 (2013/12/06) 新規追加

    - #### isMultipleAll

          public boolean isMultipleAll()

      複数選択可能時に全選択を設定するかどうかを返します。 これは、上位入れ子のタグの OptionTag で、multipleAll を取り出して、 true であれば、全選択に設定します。
      定義:
        `isMultipleAll` インタフェース内 `OptionAncestorIF`
      戻り値:
        false固定
      関連項目:
        `OptionAncestorIF.addOption( String )`
      変更履歴:
        5.7.1.0 (2013/12/06) 新規追加

    - #### getAddKeyLabel

          public String getAddKeyLabel()

      セレクトメニューの場合、キー:ラベル形式で表示するかどうか[true/false/null]を返します。 これは、上位入れ子のタグの OptionTag で、addKeyLabel を取り出して、 true であれば、キー:ラベル形式 のオプションを、#addOption( String ) で 登録させます。
      定義:
        `getAddKeyLabel` インタフェース内 `OptionAncestorIF`
      戻り値:
        null固定
      関連項目:
        `addOption( String )`, `OptionAncestorIF.getAddKeyLabel()`
      変更履歴:
        6.0.4.0 (2014/11/28) キー:ラベル形式で表示するかどうか。新規追加

    - #### setRawParam

          public void setRawParam​(String param)

      パラメーター変換({@XXXX}の置き換えをしない状態のパラメーターをセットします。 ※ ここでは、何もしません。
      定義:
        `setRawParam` インタフェース内 `OptionAncestorIF`
      パラメータ:
        `param` - パラメーター
      関連項目:
        `OptionAncestorIF.addOption( String )`
      変更履歴:
        5.7.1.0 (2013/12/06) 新規追加

    - #### toString

          public String toString()

      このオブジェクトの文字列表現を返します。 基本的にデバッグ目的に使用します。
      オーバーライド:
        `toString` クラス内 `CommonTagSupport`
      戻り値:
        このクラスの文字列表現
      このメソッドは、nullを返しません