2013-07-27 14 views
5

Tôi đang sử dụng css bootstrap twitter để tạo kiểu. Để tạo các nút biểu tượng trong đó, cách tiêu chuẩn là sử dụng các thẻ "i". <button type="submit"><i class="icon-search"></i></button>.

Nhưng tôi không thể nhập nó trong vòng <h:commandButton id="myid"><i class="icon-search"></i></h:commandButton> Làm cách nào để thêm HTML trong kết xuất được hiển thị <h:commandButton>?JSF <h: commandButton> với biểu tượng twitter bootstrap

Trả lời

1

Tôi vừa mới sử dụng bản hack bây giờ. Nó giống như thế này (tôi đã giấu h: commandButton và thêm một nút gửi mới).

<h:form id="myFrm" > 
    <h:inputText id="search" value="#{user.name}"></h:inputText> 
    <h:commandButton id="btnsearch" action="search.xhtml" style="display: none"></h:commandButton> 
    <button type="submit" id="myFrm:btnsearch" name="myFrm:btnsearch"><i class="icon-search"></i></button> 
</h:form> 
7

Bạn có thể thêm <i class="icon-search"></i> bên h:commandLink

link lệnh có thể được tạo kiểu như nút

<h:commandLink id="btnsearch" 
    action="search.xhtml" 
    styleClass="btn btn-default"> 
    <i class="icon-search"></i> Search 
</h:commandLink> 
+3

tôi thấy rằng việc sử dụng giải pháp này, vì nó làm cho một neo-tag, hình thức không nộp khi nhập. Khác hơn đó là một giải pháp tốt. – baron5

+0

Nếu bạn sử dụng giải pháp này kết hợp với câu trả lời của balusC trong số này http://stackoverflow.com/questions/5485851/jsf-default-action-to-execute-when-pressing-enter-in-a-form Phím enter cũng sẽ hoạt động. – baron5