クラス TbodyMovableTag
java.lang.Object
jakarta.servlet.jsp.tagext.TagSupport
jakarta.servlet.jsp.tagext.BodyTagSupport
org.opengion.hayabusa.taglib.CommonTagSupport
org.opengion.hayabusa.taglib.TbodyMovableTag
- すべての実装されたインタフェース:
BodyTag
,IterationTag
,JspTag
,Tag
,TryCatchFinally
,Serializable
option/ogTbodyMovable.js JavaScript を利用したマウスによる上下移動にシンクロ等させます。
headタグで、useTbodyMovable="true" をセットすると、マウスまたはカーソルで、
tbody 部を上下に移動させることが可能です。
このタグは、その動作に関連付けて、同期して移動させたり、内容を入れ替えるカラムや
内容に、+1、-1するカラム、移動の制限(入替対象にしない、ドラッグできないなど)
を指定します。
記述は、view の後で構いません。
このタグを有効にするには、headタグで、useTbodyMovable="true" をセットする必要があります。
なお、この JavaScript は、1行単位に tbody を記述している view であれば、有効です。
内部で、tr ではなく、tbody を処理しているためです。
(つまり、ガント専用ではありませんが、HTMLTableには使えません。)
このタグは、span タグを出力し、ogTbodyMovable.js で処理しています。その際のキーとして、
span タグ には、class="tbodyMovable" を付けています。
- 関連項目:
- 変更履歴:
- 5.6.3.3 (2013/04/19) 新規作成
- 機能分類
- 画面部品
- 形式サンプル:
- ●形式:<og:tbodyMovable ... /> ●body:なし ●前提:headタグで、useTbodyMovable="true" を指定してください。 ●Tag定義: <og:tbodyMovable seqclm 【TAG】移動時に値を入れ替えするカラム名(CSV形式で複数指定可能,先頭名称で判断)(初期値:SEQ) noMove 【TAG】入替制限する tbodyのクラス名(CSV形式で複数指定可能) noDrag 【TAG】マウスでドラッグできない tbodyのクラス名(CSV形式で複数指定可能) adjustSeq 【TAG】上移動(-1)、下移動(+1)で、値をセットするカラム名(1つのみ、seqclmで指定されている必要あり) sync 【TAG】他のTABLEを同期して移動させる場合に、クラス/IDを指定 debug 【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false) /> ●使用例 <og:tbodyMovable seqclm = "DYORDER,SEQ" noMove = "disMovable" noDrag = "disDragable" adjustSeq = "DYORDER" sync = "fixBodyDiv" />
- 導入されたバージョン:
- JDK6.0,
-
フィールドの概要
クラスから継承されたフィールド org.opengion.hayabusa.taglib.CommonTagSupport
BR, BUFFER_MIDDLE, CR
クラスから継承されたフィールド jakarta.servlet.jsp.tagext.BodyTagSupport
bodyContent
クラスから継承されたフィールド jakarta.servlet.jsp.tagext.TagSupport
id, pageContext
インタフェースから継承されたフィールド jakarta.servlet.jsp.tagext.BodyTag
EVAL_BODY_BUFFERED, EVAL_BODY_TAG
インタフェースから継承されたフィールド jakarta.servlet.jsp.tagext.IterationTag
EVAL_BODY_AGAIN
インタフェースから継承されたフィールド jakarta.servlet.jsp.tagext.Tag
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
-
コンストラクタの概要
コンストラクタ -
メソッドの概要
修飾子とタイプメソッド説明int
doEndTag()
Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。protected String
タグの名称を、返します。protected void
release2()
タグリブオブジェクトをリリースします。void
setAdjustSeq
(String adjustSeq) 【TAG】上移動(-1)、下移動(+1)で、値をセットするカラム名(1つのみ、seqclmで指定されている必要あり)。void
【TAG】マウスでドラッグできない tbodyのクラス名を指定します(CSV形式)。void
【TAG】入替制限(移動できない)する tbodyのクラス名を指定します(CSV形式)。void
【TAG】移動時に値を入れ替えするカラム名を指定します(CSV形式,先頭名称で判断)(初期値:SEQ)。void
【TAG】他のTABLEを同期して移動させる場合に、クラス/IDを指定します。toString()
このオブジェクトの文字列表現を返します。クラスから継承されたメソッド org.opengion.hayabusa.taglib.CommonTagSupport
add, add, addEventColumn, addEventColumn, check, commitTableObject, debugPrint, debugPrint, doAfterBody, doCatch, doFinally, doStartTag, get, getApplicationInfo, getAttributes, getBodyRawString, getBodyString, getContextAttribute, getContextPath, getCookie, getCSVParameter, getCSVParameter, 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, 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, useStrict, useTag, useXssCheck
クラスから継承されたメソッド jakarta.servlet.jsp.tagext.BodyTagSupport
doInitBody, getBodyContent, getPreviousOut, release, setBodyContent
クラスから継承されたメソッド jakarta.servlet.jsp.tagext.TagSupport
findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue
クラスから継承されたメソッド java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
インタフェースから継承されたメソッド jakarta.servlet.jsp.tagext.Tag
getParent, setPageContext, setParent
-
コンストラクタの詳細
-
TbodyMovableTag
public TbodyMovableTag()デフォルトコンストラクター- 変更履歴:
- 6.4.2.0 (2016/01/29) PMD refactoring. Each class should declare at least one constructor.
-
-
メソッドの詳細
-
doEndTag
Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。- 定義:
doEndTag
インタフェース内Tag
- オーバーライド:
doEndTag
クラス内CommonTagSupport
- 戻り値:
- 後続処理の指示
-
release2
タグリブオブジェクトをリリースします。 キャッシュされて再利用されるので、フィールドの初期設定を行います。- オーバーライド:
release2
クラス内CommonTagSupport
-
setSeqclm
【TAG】移動時に値を入れ替えするカラム名を指定します(CSV形式,先頭名称で判断)(初期値:SEQ)。- パラメータ:
seqclm
- SEQカラム名 移動時に値を入れ替えたいカラム名(CSV形式)- 説明:
- 該当タグのseqclm属性値が存在する場合はシーケンスカラム名とします。 上下移動で、同期して動きますが、このカラムの値も入れ替わります。判りにくいですが、 つまり位置は入れ替わらないという事です。 例えば、レコードに連番を振っておき、このカラムだけ移動しないので、当初の連番のままとなり、 その値を元に、計算しなおすことで、納期調整を行ったりします。 シーケンスは指定カラムの先頭名称で判断するので注意して下さい。 例:SEQの指定でSEQUENCEカラムが判定されてしまう。 seqclm属性はCSV形式で複数指定可能です。 初期値 は、"SEQ" です。
-
setNoMove
【TAG】入替制限(移動できない)する tbodyのクラス名を指定します(CSV形式)。- パラメータ:
noMove
- 入替制限クラス (CSV形式)- 説明:
- tbodyが 入替制限する場合に、tbodyにここで指定した class 属性を付与しておくことで、 入れ替え対象から除外されます。(簡単にいうと、これを飛び越えて移動できません) 例えば、グループ化しているレコードの範囲でしか入れ替えたくない・・・などの時に使用します。 ここでは、CSV形式で複数のクラス名を指定可能です。
-
setNoDrag
【TAG】マウスでドラッグできない tbodyのクラス名を指定します(CSV形式)。- パラメータ:
noDrag
- ドラッグ制限クラス (CSV形式)- 説明:
- tbodyを ドラッグしたくない場合に、tbodyにここで指定した class 属性を付与しておくことで、 ドラッグ対象から除外されます。(簡単にいうと、掴めません) これは、対象の tbody がつかめないだけで、その前後の tbody と入れ替えはされます。 位置はどこに行くか判りませんが、ここで指定した tbody の順番は保証されます。 例えば、納期確定しているレコードは入れ替えたくない・・・などの時に使用します。 ここでは、CSV形式で複数のクラス名を指定可能です。
-
setAdjustSeq
【TAG】上移動(-1)、下移動(+1)で、値をセットするカラム名(1つのみ、seqclmで指定されている必要あり)。- パラメータ:
adjustSeq
- 値設定カラム (上移動(-1)、下移動(+1)で、値をセットするカラム名)- 説明:
- adjustSeq属性で指定したカラム(seqclmで指定されている必要あり)は、 上に動かした時は上の値から-1された値を、下に動かした時は下の値に+1した値を セットするような動作になります。これは1つのみ指定可能です。 移動時に値を入れ替えするカラム名の特殊版といえます。 ここでは、カラム名は1つのみ指定可能で、かつ、seqclmで指定されている必要があります。
-
setSync
【TAG】他のTABLEを同期して移動させる場合に、クラス/IDを指定します。- パラメータ:
sync
- テーブル同期カラム (他のTABLEを同期して移動させる場合に指定するクラス/ID)- 説明:
- 左右分割やガント系のテーブル部とガント部に分かれているようなテーブルで、上下移動を 行う場合に、ドラッグしているレコードに同期させて移動させることが可能です。 ここで指定するクラスは、tableか、table直上の要素のクラスのみ指定可能です。 また、tbodyMovableが複数ある場合は先頭の属性値がセットされます。
-
getTagName
タグの名称を、返します。 自分自身のクラス名より、自動的に取り出せないため、このメソッドをオーバーライドします。- オーバーライド:
getTagName
クラス内CommonTagSupport
- 戻り値:
- タグの名称
- 関連項目:
- このメソッドは、nullを返しません
-
toString
このオブジェクトの文字列表現を返します。 基本的にデバッグ目的に使用します。- オーバーライド:
toString
クラス内CommonTagSupport
- 戻り値:
- このクラスの文字列表現
- このメソッドは、nullを返しません
-