PullRequest
       22

0 голосов
/ 18 января 2012

Я использую томагавк <t:selectOneRadio> следующим образом:

<t:selectOneRadio 
     id="sorid" onclick="myForm.submit();"
    value="#{myBean.property}" style="float: left;padding-right: 5px;">
    <f:selectItem itemLabel="#{bundle.option_1}"
        itemValue="option1" id="option1" />
    <f:selectItem itemLabel="#{bundle.option_2}"
        itemValue="option2" id="option2" />
    <f:selectItem itemLabel="#{bundle.option_3}"
        itemValue="option3" id="option3" />
    <a4j:support event="oncomplete" reRender="chart"/>
</t:selectOneRadio>

Форма отправлена, но свойство базового компонента никогда не изменяется. Это происходит только в IE или нет, я даю дополнительные клики на странице. Я пробовал с event = "onclick" также. Я попытался добавить this.blur (); для выбора действий OneRadio onclick.

Любая помощь будет оценена! Спасибо.

1 Ответ

1 голос
/ 18 января 2012

Удалить обработчик onclick.Это только сталкивается с поддержкой Ajax.Просто позвольте <a4j:support> выполнять работу вместо этого во время события click.

<t:selectOneRadio 
     id="sorid"
    value="#{myBean.property}" style="float: left;padding-right: 5px;">
    <f:selectItem itemLabel="#{bundle.option_1}"
        itemValue="option1" id="option1" />
    <f:selectItem itemLabel="#{bundle.option_2}"
        itemValue="option2" id="option2" />
    <f:selectItem itemLabel="#{bundle.option_3}"
        itemValue="option3" id="option3" />
    <a4j:support event="click" reRender="chart"/>
</t:selectOneRadio>

(обратите внимание, что имя события само по себе не имеет префикс on, это относится только к именам атрибутов элементов HTML, которые должны ссылаться на скрипт, который должен выполняться при возникновении события)

...