struts2標籤:doubleselect學習心得標籤

來源:互聯網
上載者:User

舉個例子:
Data Object:

public class Book {
        private int id;
        private String name;
        private int categoryId;

       
}

public class Category {
        private int id;
        private String name;

}

JSP:
<s:doubleselect list="categoryList" listKey="id" listValue="name"
   doubleName="bookId" doubleList="bookMap.get(top.id)" doubleListKey="id" doubleListValue="name" theme="simple"/>

此處要注意的是top的用法,開始我以為top就是指代list的值,所以使用的是bookMap.get(top),但是二級下拉框一直是空白,後來我突然想到說不定top是一個Category執行個體呢,嘗試了一下top.id,果然成功了。需要著重注意的是dobuleList的獲值方法,id為List屬性迴圈的ListKey的值。

Action:

public class DemoAction {
        private Map<Integer, List<Book>> bookMap;
        private List<Category> categoryList;

        public String execute() throws Exception {
                categoryList = new ArrayList<Cateogry>();

                Category category;
                category = new Category();
                category.setId(1);
                category.setName("Fiction");
                categoryList.add(category);
                category = new Category();
                category.setId(2);
                category.setName("Java");
                categoryList.add(category);

 

                bookMap = new HashMap<Integer, List<Book>>();

                List<Book> bookList = new ArrayList<Book>();
                Book book;
                book = new Book();
                book.setId(1);//該出的1為Category的id,根據Category的id獲得對應的book
                book.setName("Harry Porter");
                book.setCategoryId(1);
                bookList.add(book);

                book = new Book();
                book.setId(2);
                book.setName("Nightmare");
                book.setCategoryId(1);
                bookList.add(book);

                bookMap.put(1, bookList);

 

                bookList = new ArrayList<Book>();
                book = new Book();
                book.setId(3);
                book.setName("Thinking in Java");
                book.setCategoryId(2);
                bookList.add(book);
                book = new Book();
                book.setId(4);
                book.setName("Head First Design Patterns");
                book.setCategoryId(2);
                bookList.add(book);

                bookMap.put(2, bookList);

                return SUCCESS;
        }

        // getter and setter..
}

名  字
 資料類型
 默  認  值
 說  明
 
doubleCssClass
 String
  用來呈現第二個select元素的CSS類
 
doubleCssStyle
 String
  用來呈現第二個select元素的CSS樣式
 
doubleDisabled
 boolean
 false
 是否禁用第二個select元素
 

 

doubleEmptyOption
  false
 是否要在第二個select元素裡插入一個空白選項
 
doubleHeaderKey
 String
  第二個select元素的標題的鍵
 
doubleHeaderValue
 String
  第二個select元素的標題的值
 
doubleId
 String
  第二個select元素的標識符
 
doubleList*
 String
  用來充當第二個select元素的選項來源的可遍曆對象
 
doubleListKey
 String
  為第二個select元素提供選項值的對象屬性
 
doubleListValue
 String
  為第二個select元素提供選項行標的對象屬性
 
doubleMultiple
 boolean
 false
 是否允許使用者在第二個select元素裡進行“多選多”選擇
 
doubleName*
 String
  第二個select元素的名字
 
doubleSize
 integer
  在第二個select元素裡需要顯示的選項的個數
 
doubleValue
 String
  第二個select元素的值
 
emptyOption
 boolean
 false
 是否要在第一個select元素裡插入一個空白選項
 
formName
 String
  包含這個組件的表單的名字
 
headerKey
 String
  第一個select元素裡的標題的鍵
 
headerValue
   第一個select元素裡的標題的值
 
list
   用來充當第一個select元素的選項來源的可遍曆對象
 
listKey
 String
  為第一個select元素提供選項值的對象屬性
 
listValue
 String
  為第一個select元素提供選項行標的對象屬性
 
multiple
 boolean
 false
 是否允許使用者在第一個select元素裡進行“多選多”選擇
 
size
 integer
  在第一個select元素裡需要顯示的選項的個數
 

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.