0

我需要让 Radio Group 具有“必需”类,这样我就可以使用 jQuery Validation 插件,我已经尝试过这里的建议

这是字段:

        <div data-role="fieldcontain">
            <fieldset data-role="controlgroup" data-type="horizontal">
                <legend class="ui-input-text">Compliant?</legend>

                <xp:radioGroup id="CLCompliant"
                    value="#{docAuditCLAnswer.Compliant}">

                    <xp:selectItem itemLabel="Yes" itemValue="Yes"
                        id="CLCompliantYes">
                    </xp:selectItem>

                    <xp:selectItem itemLabel="No" itemValue="No"
                        id="CLCompliantNo">
                    </xp:selectItem>

                    <xp:selectItem itemLabel="N/A" itemValue="NA"
                        id="CLCompliantNA">
                    </xp:selectItem>
                </xp:radioGroup>
            </fieldset>
        </div>

我尝试了以下方法,因为这些不是 styleClass 属性,但该属性被忽略/不呈现:

                    <xp:selectItem itemLabel="Yes" itemValue="Yes"
                        id="CLCompliantYes">
                        <xp:this.attrs>
                            <xp:attr name="class" value="required">
                            </xp:attr>
                        </xp:this.attrs>
                    </xp:selectItem>

我也尝试过在加载文档时进行设置,但是如果不对视图进行硬编码就无法按名称选择:_id,是否有与 x$ XSnippet 等效的功能?

$('input:radio[name="view:_id1:CLCompliant"]').addClass("required");
4

1 回答 1

0

Gary,向您的 XPage (OutputScript) 添加一个脚本块并添加:

XSP.addOnLoad(function() {
    $('input:radio[name="#{id:CLCompliant}"]').addClass("required");
    })

...或jQuery等价物。

顺便说一句:使用没有默认值的无线电组是一个常见的 UI 错误。它们提供了用户习以为常的“活板门” UI 模式:您可以选择一个值,但不能取消选择它。因此,更好的用户体验是使用不同的控件(下拉)或设置默认值。

于 2013-02-28T00:37:19.757 回答