
Odoo中文社区可以通过以下两个域名访问:shine-it.net , odoo.net.cn
由于系统升迁的原因,本论坛部分较早期的内容存在格式和链接损坏失效的问题,并非本论坛系统本身的缺陷,望谅解
本社区没有维护任何QQ群讨论组,任何与本社区同名的QQ群讨论组的言论与本社区无关!
开发人员可以登录gitter讨论组: http://gitter.im/odoo-china/Talk, 需要github账号
如果您登录系统碰到问题,请在微信公众号留言:
XPATH中position()的用法
-
在OpenERP中,继承视图可以用<field name="xxoo">这样的标签来定位修改点,但对于有些没有名字的元素比如page,就只能用更强大的xpath了。
但使用xpath有个问题,XPATH 是可以返回一个LIST 的,不过OpenERP 默认只取第一个,如果改其他的元素怎么办?对于最后一个元素,可以用last()函数,还可以用last() - n来定位倒数第几个元素,当然这是有点儿危险的,可能会越界。步科大神分享还可以用position()函数,这样就可以正向定位了。
比如
<header>
<button name="action_quotation_send" string="Send by Email" type="object" states="draft" class="oe_highlight" groups="base.group_user"/>
<button name="action_quotation_send" string="Send by Email" type="object" states="sent" groups="base.group_user"/>
这两个按钮就比较坑爹,定位第一个可以有三种办法:
<xpath expr="//button[@name='action_quotation_send']" position="after">
<xpath expr="//button[@name='action_quotation_send'][position()=1]" position="after">
<xpath expr="//button[@name='action_quotation_send'][last()-1]" position="after"> -
目睹 大神 分享
-
赞...............
参考资料:https://developer.mozilla.org/en-US/docs/XPath/Functions/position -
顶!
之前为了隐藏按钮用过的笨办法拿出来贻笑大方一下:
<br /> <xpath expr="//button[@name='action_quotation_send' and @states='draft']" position="replace"></xpath><br /> <xpath expr="//button[@name='action_quotation_send' and @states='sent']" position="replace"></xpath><br />
-
哈哈 我也是用这种笨办法
-
[quote author=mrshelly link=topic=14508.msg24932#msg24932 date=1382769348]
赞...............
参考资料:https://developer.mozilla.org/en-US/docs/XPath/Functions/position
[/quote]
xpath 还有很多玩法谢谢分享。