दिलचस्प पोस्ट
Html स्रोत से सभी लाइन ब्रेक निकालें PowerShell में एक कमांड के निष्पादन का समय कोई कनेक्शन नहीं किया जा सकता क्योंकि लक्ष्य मशीन ने इसे सक्रिय रूप से 127.0.0.1:3446 से इनकार कर दिया "गैर-स्थिर विधि को एक स्थिर संदर्भ से संदर्भित नहीं किया जा सकता" त्रुटि एडीएल फ़ंक्शन टेम्पलेट क्यों नहीं खोजता है? एकाधिक .cpp और .h फ़ाइलों को संकलित करने के लिए G ++ का उपयोग करना एंड्रॉइड – फैल / चुटकी के साथ रिलेटिव लेआउट में ज़ूम इन / आउट करें डब्ल्यूपीएफ में कर्सर बदलना कभी-कभी काम करता है, कभी-कभी नहीं होता है स्विंगवार्कर के निष्पादन को कैसे रद्द करें? सॉर्टिंग स्ट्रिंग जिसमें जावा में नंबर होता है एकाधिक कॉलम एक साथ पेस्ट करें ऊर्ध्वाधर इनपुट तत्वों को संरेखित करें 404 हेडर – HTTP 1.0 या 1.1? डुप्लिकेट HTTP प्रतिसाद हेडर स्वीकार्य हैं? स्थान सेवा जीपीएस फोर्स बंद

डिफ़ॉल्ट रूप से, जेएसएफ़ व्यर्थ रहित आईडी बनाती है, जो वेब मानकों के सीएसएस भाग के साथ असंगत हैं

क्या कोई सक्रिय जेएसएफ (या प्राइफ़फैस) उपयोगकर्ता है, यह बताता है कि डिफ़ॉल्ट रूप से ऐसा क्यों होता है कि कोई भी इसके बारे में कुछ भी नहीं कर रहा है:

<p:commandLink id="baz" update=":foo:boop" value="Example" /> 

जो मार्कअप उत्पन्न करता है जिसका उपयोग जावास्क्रिप्ट या सीएसएस में हैक्स के बिना नहीं किया जा सकता है और इसे सामान्य रूप से अमान्य माना जाना चाहिए:

 <a href="javascript:void(0);" id=":foo:bar:baz">Example</a> 

id=":bar:baz:foo" विशेषता में बृहदान्त्र होते हैं, जो इस विशेषता के लिए मान्य वर्ण नहीं हैं, कम से कम सीएसएस परिप्रेक्ष्य से।

हालांकि विशेषता का अनुमान के अनुसार वैध हो सकता है, यह वास्तविक-दुनिया जावास्क्रिप्ट और सीएसएस कार्यान्वयन के साथ काम करने में विफल रहता है।

संक्षेप में, जेएसएफ में डिफ़ॉल्ट id विशेषता निर्माण सामने वाले विकास के लिए अनुपयोगी है।

Solutions Collecting From Web of "डिफ़ॉल्ट रूप से, जेएसएफ़ व्यर्थ रहित आईडी बनाती है, जो वेब मानकों के सीएसएस भाग के साथ असंगत हैं"

: गया है क्योंकि यह एकमात्र समझदार विभाजक चरित्र है जिसके लिए गारंटी दी जा सकती है कि अंतराल पर इसका उपयोग अकस्मात जेएसएफ घटक आईडी (जो मान्य किया गया है) में नहीं किया जाएगा और यह सीएसएस चयनकर्ताओं में इसका इस्तेमाल करना संभव है। \

ध्यान दें कि HTML4 युक्ति का कहना है कि बृहदान्त्र id और name विशेषता में मान्य मान है। इसलिए आपकी शिकायत है कि यह "वेब मानकों" के साथ संगत नहीं है कहीं नहीं जाता है।

आईडी और NAME टोकन एक पत्र ([ए-ज़ा-जेड]) से शुरू होना चाहिए और इसके बाद किसी भी संख्या में अक्षरों, अंकों ([0- 9]), हाइफ़न ("-"), अंडरस्कोर ("_") का पालन किया जा सकता है , बृहस्पति (":"), और अवधि ("।")।

एकमात्र समस्या यह है कि : सीएसएस चयनकर्ताओं में एक विशेष चरित्र है जिसे बचने की आवश्यकता है। जेएस को बृहदान्त्र के साथ अपनी कोई समस्या नहीं है document.getElementById("foo:bar") पूरी तरह से ठीक काम करता है। केवल संभावित समस्या jQuery में है क्योंकि यह सीएसएस चयनकर्ता वाक्यविन्यास का उपयोग करता है।

यदि आप वास्तव में की जरूरत है, तो आप हमेशा डिफ़ॉल्ट विभाजक वर्ण बदल सकते हैं : javax.faces.SEPARATOR_CHAR संदर्भ javax.faces.SEPARATOR_CHAR को सेट करके जैसे - या _ नीचे के रूप में। आपको केवल यह गारंटी देने की ज़रूरत है कि आप JSF घटक आईडी में कहीं भी उस वर्ण का उपयोग नहीं करते हैं (यह मान्य नहीं है!)।

 <context-param> <param-name>javax.faces.SEPARATOR_CHAR</param-name> <param-value>-</param-value> </context-param> 

_ जिस तरह से जेएसएफ के j_id1 आईडी जैसे j_id1 में अतिरिक्त नुकसान होता है, इस प्रकार आपको यह भी सुनिश्चित करना चाहिए कि आपके जेएसएफ पेजों के सभी NamingContainer घटकों को NamingContainer एक के बजाय एक निश्चित आईडी है अन्यथा JSF नामकरण कंटेनर बच्चों को खोजने में समस्या होगी।

मैं केवल इसकी सिफारिश नहीं करता था यह लंबे समय तक भ्रमित और भंगुर में है। इसके बारे में फिर से सोचने के लिए, औसत जेएसएफ वेबपैप के अनन्य तत्व स्वयं के द्वारा पहले से ही रूपों या तालिकाओं के अंदर ही नहीं होते हैं। वे आमतौर पर सिर्फ मुख्य लेआउट पहलुओं का प्रतिनिधित्व करते हैं। मैं कहूंगा, यह सामान्यतः एचटीएमएल / सीएसएस परिप्रेक्ष्य में एक खराब डिजाइन है। बस आईडी के बजाय पुन: प्रयोज्य CSS वर्ग नामों के द्वारा उन्हें चुनें। अगर आपको वास्तव में इसकी आवश्यकता है, तो आप इसे हमेशा एक सादे एचटीएमएल <div> या <span> में रख सकते हैं जिसका आईडी JSF द्वारा प्रीपेड नहीं होगा

यह भी देखें:

  • HTML में आईडी विशेषता के लिए वैध मान क्या हैं?
  • क्या JSF में तत्व आईडी विभाजक को बदलना संभव है?
  • कैसे jsf का उपयोग JSF घटकों का चयन करने के लिए?
  • सीएसएस चयनकर्ताओं में "बोनस" में बृहदान्त्र के साथ JSF जेनरेट HTML तत्व आईडी का उपयोग कैसे करें?
  • JSF संमिश्र घटक में जावास्क्रिप्ट को एकीकृत करें, स्वच्छ तरीके से