【发布时间】:2010-11-17 14:07:34
【问题描述】:
我有以下代码:
<rich:tabPanel switchType="client">
<rich:tab name="tab1" label="tab1" onclick="alert('Hello');">
...
</rich:tab>
<rich:tab name="tab2" label="tab2" onclick="alert('Hi');">
...
</rich:tab>
</rich:tabPanel>
此代码将生成一个带有 2 个选项卡标题的面板,如下所示:
+------+ +------+
| tab1 | | tab2 |
+ +-+------+--------------------------+
| |
| Content of my Tab goes here... |
| |
+------------------------------------------+
关于所使用的代码,如果我单击 tab2 标头,我希望看到一个 JavaScript 警报说 Hi。
但是,什么都没有显示,我只是切换到第二个标签。
其实,如果我点击标签的内容,就会显示警告信息。
我对这种行为有点困惑。
问题 #1 这种行为正常吗?换句话说,onclick 指的是内容上的点击事件,而 not 是标签页头上的事件。
确实,如果我查看这个post 和这个相关的defect,它似乎并不正确......
问题#2如果这种行为是正常的,如何为每个标签设置不同的onclick 行为?实际上,如果我在<rich:tabPanel> 上设置onclick 而不是<rich:tab> 组件,onclick javascript 函数将始终被执行。
我正在使用 Richfaces 3.3.2.GA、JSF 1.2 + Facelets、Java 1.6
【问题讨论】: