2011-05-21 14 views
5

मैं सोच रहा था के साथ JSP/अभिव्यक्ति भाषा एक अंडाकार संक्षिप्त नाम लागू करने के लिए सबसे अच्छा तरीका क्या है।अंडाकार (पाठ संक्षिप्त) JSP के साथ/ईएल

अभी के लिए, मैं fn का उपयोग कर दिया गया है:-स्ट्रिंग है, जो ठीक है, लेकिन मैं तीन डॉट्स "...", मामले में पाठ छोटा कर दिया गया है करने के लिए करना चाहते हैं।

एक वेब खोज के साथ मैंने पाया कि Java Web Parts में AbbreviateTag है। हालांकि मैं सोच रहा था कि बेहतर पुस्तकालय हैं, या यदि यह बेहतर है तो मैं अपना खुद का कस्टम टैग रोल करता हूं। आपकी क्या सलाह है?

+0

क्या सीएसएस के साथ ऐसा करना बेहतर नहीं होगा? – McDowell

+0

ऐसा लगता है कि टेक्स्ट ओवरफ्लो: इलिप्सिस फ़ायरफ़ॉक्स में काम नहीं करता है, या आप एक और तरीका जानते हैं? – stivlo

+0

आह, आप सही दिखते हैं - ऐसा लगता है कि हैक और एक jQuery प्लगइन है, लेकिन यह आदर्श से कम है। – McDowell

उत्तर

2

जब से मैं नहीं समझ सकता है कैसे mmbase उपयोग करने के लिए, मैं अपने ही कस्टम टैग SimpleTagSupport विस्तार का निर्माण किया।

यह इस तरह से काम करता है:

<%@ taglib prefix="sti" uri="/WEB-INF/tlds/stivlo.tld" %> 
<p><sti:ellipsis>What a beautiful day.</sti:ellipsis></p> 
<p><sti:ellipsis maxLength="10">What a beautiful day.</sti:ellipsis></p> 

आउटपुट:

What a beautiful day. 
What a bea… 

मैं भी custom tag implementation on my blog प्रलेखित है। यह मेरा पहला कस्टम टैग है, अगर कुछ भी बेहतर किया जा सकता है, तो मुझे आपसे सुनकर खुशी होगी।

+0

मैं अपना खुद का जवाब स्वीकार कर रहा हूं, क्योंकि मुझे काम करने के लिए एमबीएएस नहीं मिल सका। – stivlo

3

MMBase टैग पुस्तकालय एक tag अंडाकार का समर्थन करता है कि नहीं है।

हालांकि, अपने खुद के लागू करने के लिए एक अच्छा विकल्प ... वास्तव में कैसे आप अंडाकार काम करने की उम्मीद के आधार पर हो सकता है।

+0

मैंने mmbase का उपयोग करने का प्रयास किया, मैंने अपनी वेब-आईएनएफ/lib निर्देशिका के अंदर mmbase-1.9.5.jar (नवीनतम रिलीज) डाला है, लेकिन मुझे त्रुटि है: "टैग लाइब्रेरी डिस्क्रिप्टर नहीं मिल सका"। मैंने इसे ग्रहण ग्रहण ग्रहण में जोड़ने की भी कोशिश की है। मैंने यूरी "http://www.mmbase.org/mmbase-taglib-2.0" और -1.0 के साथ प्रयास किया। मुझे लगता है कि मैं अभी अपना खुद का कार्यान्वयन करने की कोशिश करूंगा। – stivlo

0

पुराने धागा है, लेकिन मैं एक जवाब के लिए खोज किसी के लिए भी इस पोस्टिंग कर रहा हूँ। नीचे मैं इसे कैसे संभाला है। कोड एक लूप के अंदर था जो टीडी तत्व बना रहा था, इसलिए कॉलम का संदर्भ। अगर पाठ को छंटनी की आवश्यकता है तो मैंने इलिप्सिस के लिए अनुमति देने वाले कमरे को समायोजित किया और फिर इलिप्सिस को जोड़ा।

<c:if test="${columnMaxLength ge 0}">  
    <c:set value="" var="ellipsis" />   
    <c:if test="${fn:length(colTxt) gt columnMaxLength}">  
    <c:set value="..." var="ellipsis" />  
    </c:if> 
    <c:set value="${fn:substring(colTxt, 0, (columnMaxLength - fn:length(ellipsis)))}${ellipsis}" var="colTxt" /> 
</c:if> 
<c:out value="${colTxt}" /> 
संबंधित मुद्दे