Как определить, какая радио-кнопка была нажата в h: selectOneRadio, используя javascript или rich: jQuery? - PullRequest
0 голосов
/ 14 октября 2011

Как определить, какая радио-кнопка была нажата в h: selectOneRadio, используя javascript или, возможно, jquery?

Я уже могу сделать это, используя valueChangeListener и a4j: поддержку из управляемого компонента. То, что я хочу, это не ходить на сервер и просто использовать JQuery только для производительности, потому что иногда требуется ответ, прежде чем ответ сервера вернется.

Что я хочу, так это то, что при нажатии кнопки переключателя некоторые мои компоненты отключаются.

Вот код.

<h:selectOneRadio id="isPrivate" valueChangeListener="#{someBean.changeRadio}">
                    <a4j:support event="onchange" reRender="sp" />            
                    <f:selectItem id="isPrivate0" itemLabel="No" itemValue="false"/>
                    <f:selectItem id="isPrivate1" itemLabel="Yes" itemValue="true"/>         
                </h:selectOneRadio>

Спасибо заранее. :)

Ответы [ 3 ]

2 голосов
/ 14 октября 2011

Лучше прикрепить событие изменения к каждой радиокнопке в списке при загрузке документа.

$(function()
{
    $('table[id$="isPrivate"] input:radio',this).each(function (){ 
                $(this).change(function (event) { 

                //do disabling here
                //$(this).val() - will return the value of radiobutton
                });
    }); 
});
1 голос
/ 17 октября 2011

с jQuery:

jQuery('input[name=isPrivate]:checked').val()

пример:

if (jQuery('input[name=isPrivate]:checked').val() == "true") {
    //yes
}
0 голосов
/ 14 октября 2011

Вам нужно будет найти элементы <input type='radio' …/>, сгенерированные JSF, и прослушать событие change , используя, скажем, jQuery's .change().

...