2013-07-28 6 views
6

मैं पूरे दृश्य को ब्लॉक करने के लिए <p:blockUI> का उपयोग करना चाहता हूं। लेकिन चूंकि यह विशेषता block केवल आईडी के रूप में कीवर्ड स्वीकार करती है और उदा। @all, वर्तमान में देखे जाने का एकमात्र तरीका है नाम की कंटेनर (उदा। <f:subview>) दृश्य की पूरी सामग्री को लपेटने के लिए।पूरे दृश्य पर <p:blockUI> का उपयोग कैसे करें?

दुर्भाग्यवश यह अर्थात् गंदा है और मुझे सभी पूर्ण आईडी का नाम बदलने की आवश्यकता होगी क्योंकि एक नया असफल (<p:blockUI> को छोड़कर) आईडी- "उपसर्ग" बनाया गया है।

क्या ऐसा करने का कोई क्लीनर तरीका है?

उत्तर

4

मान लीजिए कि मैं सही ढंग से समझता हूं, आप बस h:body पर एक आईडी जोड़ सकते हैं और की block विशेषता में उस आईडी को संदर्भित कर सकते हैं। इसके अलावा, आपको अपने घटकों के आईडी को बदलने की आवश्यकता नहीं होगी। त्वरित उदाहरण

<h:body id="wholeView"> 
    <h:form> 
     <h:inputText/><br/> 
     <h:inputText/><br/> 
     <p:commandButton id="pnlBtn" value="Block Panel" type="button" onclick="bui.show()"/> 
     <p:blockUI block=":wholeView" widgetVar="bui"/> 
    </h:form>  
</h:body> 

फिर, यह सिर्फ एक मूर्ख उदाहरण है जो प्रदर्शन उद्देश्यों के लिए दृश्य को अवरुद्ध करता है। हालांकि, मैं नीचे दिए गए उत्तर से जो समझता हूं, उससे आपको h:body से आईडी का उपयोग करने के लिए Mojarra 2.1.8 या उच्चतम का उपयोग करना होगा।

How to spefic the body id attribute in JSF 2?

+0

ओह हाँ! Mojarra को अपग्रेड करने के बाद यह आसान था। धन्यवाद। :) – Lester

+0

@ लेस्टर आपका स्वागत है :) – Andy

संबंधित मुद्दे