[Seasar-user:18764] Re: [Ymir] Validate後に、該当textboxのスタイルを変更したい
kubo
[E-MAIL ADDRESS DELETED]
2009年 10月 24日 (土) 10:04:44 JST
久保(jflute)です。
いえいえ、Exampleを活用して下さってありがとうございます。
いじる用のExampleとReadOnlyのExampleを分けて
チェックアウトしておくと便利ですよ。
2009/10/23 西山 はじめ <[E-MAIL ADDRESS DELETED]>:
> 西山(hajimeni)です。
>
> 申し訳ありません。ありました・・・。
>
> チェックアウトしてから、色々いじったり編集したりしてましたの で、そこで自分で消してしまっていたみたいです・・・(本当に申 し訳ありません)
>
> [2009/10/23 19:09] kubo さんは書きました。:
>>
>> 久保(jflute)です。
>>
>> dbflute-ymir-exampleでもやってますよ。
>> 「テキストボックスの色を変える」ではなく、
>> 「ラベルの色を変える」ですが。
>>
>> // 会員名称というラベルのclass属性を差し替え
>> <label tal:attributes="class notes/contains(memberName) ?
>> string:label-invalid : default" class="label-normal">
>> 会員名称(*)
>> </label>
>>
>> // その機能を使ったExample(会員編集:入力)
>>
>> https://www.seasar.org/svn/sandbox/dbflute/trunk/dbflute-ymir-example/src/main/webapp/member/edit/input.html
>>
>> 2009/10/23 西山 はじめ <[E-MAIL ADDRESS DELETED]>:
>>>
>>> お世話になっております。
>>> 西山(hajimeni)です。
>>>
>>> 丁寧にありがとうございます。
>>> やりたいことが完全に実現できました。
>>>
>>> サンプルにあったのですね。見逃しておりました。申し訳ありません。
>>> dbfluteも使っていましたので、dbflute-ymir-example だけ参照し
>>> ておりました。
>>>
>>> ymir-example-generic を参考にさせていただきます。
>>>
>>>
>>> 以上よろしくお願いいたします。
>>>
>>> [2009/10/23 16:37] YOKOTA Takehiko さんは書きました。:
>>>>
>>>> 横田です。
>>>>
>>>>> YmirでValidateを行った後、該当のテキストボックスのスタイルを
>>>>> 変更したいと思っております。(該当箇所が分かるように背景が赤
>>>>> くなるなど)
>>>>>
>>>>> Teedaでいえば、ここの機能となります。
>>>>>
>>>>> http://teeda.seasar.org/ja/extension/reverse/validation.html#%E3%82%A8%E3%83%A9%E3%83%BC%E3%81%A8%E3%81%AA%E3%81%A3%E3%81%9F%E9%A0%85%E7%9B%AE%E3%81%8C%E7%9B%AE%E7%AB%8B%E3%81%A4%E3%82%88%E3%81%86%E3%81%AB%E3%81%99%E3%82%8B%E3%81%AB%E3%81%AF
>>>>
>>>> バリデーションエラーとなったテキストボックスのスタイルを変更するのでしたら、
>>>> <input>タグに
>>>>
>>>> tal:attributes="class string:error-${notes/contains(XXX)}"
>>>>
>>>> (XXXはリクエストパラメータ名)
>>>>
>>>> という属性をつけることで、バリデーションエラー発生時に「error-true」、
>>>> 発生していない時に「error-false」というclass名がつくようになります。
>>>>
>>>> 仕組みですが、バリデーションエラーが発生した場合、バリデーションエラー
>>>> 情報を持つNotesオブジェクトがリクエストスコープに「notes」という名前で
>>>> バインドされます。
>>>>
>>>> ZPTで「notes/contains(XXX)」とすると、リクエストスコープの「notes」
>>>> という名前のオブジェクトのcontainsメソッドが(引数にXXXが渡されて)
>>>> 呼び出されます。Notesオブジェクトが存在する場合は、contains(XXX)の
>>>> 結果は「XXXというパラメータについてエラーが発生していればtrue、
>>>> していなければfalse」となりますので、XXXについてエラーが発生していれ
>>>> ば${...}の部分が"true"になり、エラーが発生していなければ"false"にな
>>>> る、というわけです。
>>>>
>>>> なお、バリデーションエラーが1つも発生しなかった場合はnotesという名前
>>>> でリクエストスコープからオブジェクトは取れませんが、その場合「notes/contains(XXX)」
>>>> という式の評価結果は"false"となります。
>>>>
>>>> このあたりのサンプルがymir-example-genericにありますのでみてみてくだ
>>>> さい。
>>>>
>>>> ソース:https://www.seasar.org/svn/ymir/example/trunk/ymir-example-generic/
>>>>
>>>> 最新のwar:http://maven.seasar.org/maven2-snapshot/org/seasar/ymir/example/ymir-example-generic/1.0.7-SNAPSHOT/ymir-example-generic-1.0.7-20091023.073027-1.war
>>>>
>>>> 「テキストボックス」というサンプルが参考になると思います。
>>>> http://localhost:8080/ymir-example-generic/text/index.html
>>>>
>>>> 以上よろしくお願いします。
>>>>
>>>>
>>>> 西山 はじめ さんは書きました:
>>>>>
>>>>> お世話になっております。
>>>>> 西山(hajimeni)です。
>>>>>
>>>>> 現在、以下の環境でYmirアプリケーションの開発を行っております。
>>>>>
>>>>> Ymir:1.0.5
>>>>> DBFlute:0.9.5.5
>>>>> S2Container:2.4.20
>>>>>
>>>>> OracleApplicationServer10g(10.1.3.4)
>>>>> OracleDatabase10g
>>>>>
>>>>> YmirでValidateを行った後、該当のテキストボックスのスタイルを
>>>>> 変更したいと思っております。(該当箇所が分かるように背景が赤
>>>>> くなるなど)
>>>>>
>>>>>
>>>>> Teedaでいえば、ここの機能となります。
>>>>>
>>>>> http://teeda.seasar.org/ja/extension/reverse/validation.html#%E3%82%A8%E3%83%A9%E3%83%BC%E3%81%A8%E3%81%AA%E3%81%A3%E3%81%9F%E9%A0%85%E7%9B%AE%E3%81%8C%E7%9B%AE%E7%AB%8B%E3%81%A4%E3%82%88%E3%81%86%E3%81%AB%E3%81%99%E3%82%8B%E3%81%AB%E3%81%AF
>>>>>
>>>>> Ymirを使用する上で、こういった機能を実装する為のValidationの
>>>>> 結果の情報は取得できるでしょうか。
>>>>>
>>>>> _prerender時に、Validate結果がわかれば何とかなりそうではある
>>>>> のですが・・・
>>>>>
>>>>> 何かいい方法がありましたら、教えていただきたいと思います。
>>>>>
>>>>>
>>>>> 以上よろしくお願いいたします。
>>>>>
>>>>
>>>
>>> --
>>> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>>> 西山 はじめ
>>> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>>> _______________________________________________
>>> Seasar-user mailing list
>>> [E-MAIL ADDRESS DELETED]
>>> https://ml.seasar.org/mailman/listinfo/seasar-user
>>>
>> _______________________________________________
>> Seasar-user mailing list
>> [E-MAIL ADDRESS DELETED]
>> https://ml.seasar.org/mailman/listinfo/seasar-user
>>
>>
>
>
> --
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> 株式会社フジミック
> システム開発センター ソフトウェア開発部
> 西山 創
> [E-mail]:[E-MAIL ADDRESS DELETED]
>
> 〒140-0002 東京都品川区東品川3-32-42 フジテレビ別館7階
> [TEL]:03-5495-1060
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>
Seasar-user メーリングリストの案内