Xpages单选组标签放置

时间:2018-09-04 15:15:50

标签: css xpages radio-group

似乎很简单,但我无法破解。我想要的是单选按钮组中每个值的标签,该标签显示在每个单选按钮的上方.....尝试使用CSS进行一些操作,但到目前为止还没有雪茄,因此希望使用任何指针。

我在自定义控件中使用复合数据对象传递值

<xc:ccQuestionInterimRadios required="true"
    dataSource="#{document1}" fieldName="test"
    helpText="Please select an answer"
    placeholder="Enter any further details here..."
    questionHeader="primary" questionTextNJD="QuestionTextNJD"
    questionText="Question text goes here">
<xc:this.radioOptions><![CDATA[#{javascript:return ['1', '2', '3', '4', '5'];}]]></xc:this.radioOptions>
</xc:ccQuestionInterimRadios>

这些值将传递为:

<xp:selectItems>
<xp:this.value><![CDATA[#{javascript:compositeData.radioOptions}]]></xp:this.value>
</xp:selectItems>

输出的HTML是:

<label for="view:_id1:_id2:_id45:_id46:radioGroupOptions:0">
<input type="radio" id="view:_id1:_id2:_id45:_id46:radioGroupOptions:0" name="view:_id1:_id2:_id45:_id46:radioGroupOptions" value="1">
1
</label>

2 个答案:

答案 0 :(得分:4)

将单选按钮组包含一个面板和一个“ label-above”类

<xp:panel
    styleClass="label-above">
    <xp:radioGroup
        id="radioGroup1"
        value="#{sessionScope.test}">
        <xp:selectItems>
            <xp:this.value><![CDATA[#{javascript:["aaa", "bbb", "ccc"]}]]></xp:this.value>
        </xp:selectItems>
    </xp:radioGroup>
</xp:panel>

并将以下条目添加到样式表中:

.label-above {
    height: 35px;
}

.label-above label {
    position: relative;
}

.label-above label input {
    position: absolute;
    top: 15px;
}

这将在单选按钮上方显示标签

enter image description here

答案 1 :(得分:0)

一个选项是创建自定义渲染器。有关comboBox generates a table instead of span in readmode web

的详细信息,请参见此处。