如何使用单选按钮绑定boolean bean属性

时间:2017-05-28 10:26:10

标签: jsp struts2 boolean ognl

我有一个包含布尔属性“Boolean isValid”的后端pojo(比如说MyBean)。我正在填充一个MyBean列表,以显示在Struts2 jsp上。现在我希望在每个MyBean旁边都有一个单选按钮,以便用户可以选择其中任何一个作为有效的bean。

我不希望收音机在预定义的值列表中进行选择(因为“list”是s:radio中的强制属性)。任何人都可以建议如何实现这个目标吗?

1 个答案:

答案 0 :(得分:0)

布尔属性应该有一个getter

isValid

返回列表后,您可以使用OGNL投影仅过滤listkey个值。或者,如果您使用listValueid=genders属性,则根本不需要它。

请参阅Struts文档中的示例:

  

在此示例中,将显示带有性别列表的无线电控件。   性别列表是根据属性getGenders()构建的。框架   调用Map将返回listKey

     

有关使用listValuegetMale()属性的示例,请参阅选择标记部分。   将使用getGenders()方法确定默认选定的一个(在本例中)   在action类中应该返回一个类似于key的值   如果要选择特定的性别,则为<s:action name="GenderMap" var="genders"/> <s:radio label="Gender" name="male" list="#genders.genders"/> <@s.radio name="car" list={"ford": "Ford Motor Co", "toyota": "Toyota"} listKey="key" listValue="value" /> 地图。

function pinElement() {
     var products = document.querySelector('.rest-of-page'),
       scroll = window.scrollY,
       nav = document.querySelector('.side-nav'),
       navTop = nav.offsetTop
       header = document.querySelector('.header'),
       offset = header.clientHeight,
       end = products.clientHeight + products.offsetTop; 


       if (scroll >= navTop && scroll < end) {
            nav.style.position = 'fixed';
            nav.style.top = offset;
        } else if (scroll < navTop) {
            nav.style.position = 'relative';
        } else {
            if(scroll >= end){
               nav.style.position = 'relative';
            }
        }
  }        
  document.addEventListener('scroll', pinElement)