[code="java"]
id="orderEndDate2" value="%{#orderEndDate1}" />
[/code]
value="%{#orderEndDate1}"
OGNL值表达式
不理解为什么要这么写?
这个标签是个怎么样生成机制?
致使我在相应的页面中用 value="%{#orderEndDate}" 也能取到值
这是什么回事?
[b]问题补充:[/b]
我的意思是:
EL表达式 我的action里面没有定义 orderEndDate1这个属性
定义的只是 order对象
为什么我在同一个页面
只是简单的用
[code="java"]
[/code]
还是能取到值。这里有点不明白
是不是在加载date和datepicker标签的时候
就默认的给整个OGNL的值栈中加入了 名为orderEndDate1的key-value对象
多谢你的回答
还是不太明白 可以说得更详细点吗?
[b]问题补充:[/b]
[quote]@dwangel [/quote]
多谢你的回答
这个问题 是没有的
[b]问题补充:[/b]
就是说在页面上定义了
[quote]
id="orderEndDate2" value="%{#orderEndDate1}" /> [/quote]
然后在同一页面也定义了
[quote] [/quote]
不明白为什么 下面能取到值
当然 上面的date标签处的 ognl也不甚明白
[b]问题补充:[/b]
[quote]@jansel [/quote]
我知道是有关系 以前一直用啊用 都不管啥的
今天公司一新同事 问其用ognl
居然都取的是页面标签的ID作为key
当然有很多取不出来
但是发现date标签的可以取出来
然后就开始想为什么 这样啊
于是又了 这个问题?
麻烦各位 有这方面了解的 指导哈 多谢
[b]问题补充:[/b]
[quote]@jansel [/quote]
你说的很对
url和date 就是这样
平时做的太多 都没怎么想
大家一起想想 ?
多谢
[b]问题补充:[/b]
[quote]@dwangel[/quote]
不好意思 确实少打了一个1 不好意思 手误
[quote]
致使我在相应的页面中用 value="%{#orderEndDate1}" 也能取到值
这是什么回事?
[/quote]
现该过来了
你说的那个链接??
还是 没太懂明白 这个到底是怎么搞定的
url标签 和date标签
[b]问题补充:[/b]
感谢大家 参与一起讨论
dwangel 多谢你说的比较细致
结贴 属于你哈
事后我试过几类标签的操作
貌似form标签取值非form标签得用%{#example}
from标签取值data标签得用%{example}
例子是:
ww:url/ 与
ww:date/ 与
ww:url/ 与 ww:hidden/
可以试下 就是个蛮好的说明
我蛮想给每位回答的 加一分
可是 JE不支持
非常郁闷的是 Je结贴的 字符不能超过100个
哼....
当你使用了id 属性时,
在page 的valueStack里就声明了一个 格式后日期的字符串对象,
这个对象的用orderEndDate1可以获取。
webwork 里非 UI和非form的tag
在使用了id 属性后,都会在valueStack里登记该id 的对象。
这是就是OGNL的内部机制,语法
为什么要这么做,当然就是和el表达式区分开来嘛
怀疑楼主是在没注意到的地方声明了 orderEndDate1
其实要验证,也很简单,另作一个项目,用这两个标签。
看看成立与否。
这个东西可能和LZ的第一个ww:date定义的id="orderEndDate1"有关,当然猜测而已。
类似的还有就是Struts2/Webwork中对URL的处理的时候也是可以从OGNL中获取ID值的
唉,说白了就是Struts2/Webwork在处理Tag的时候到底把ID的值有没有放在ValueStack中而已,我也不太理解为什么处理URL的时候也是。
就比如:
[code="xml"]
[/code]
我这里就是使用%{demoUrl}来获取URL的定义。
呃
楼主的问题其实很简单
这个tag 就是在page的valueStack里注册
id里声明的 变量的啊。
[url]http://www.opensymphony.com/webwork/wikidocs/Form%20Tags.html[/url]
文档里很清楚:
ID Name Assignment
All form tags automatically assign an ID for you. You are free to override this ID if you wish. The ID assignment works as follows:
For forms, the ID is the assumed to the action name. In the previous example, the ID would be "updatePerson".
For form elements, the ID is assumed to be [form's ID]_[element name]
[quote]致使我在相应的页面中用 value="%{#orderEndDate}" 也能取到值
这是什么回事?[/quote]
楼主少打一个1,让我误解了。
抱歉,中间对webwork文档是我理解错了。
文档里date tag 的id 的说明是 id for referencing element.id for referencing element. For UI and form tags it will be used as HTML id attribute.
date tag 是属于Non-form tag 的。