में वैकल्पिक तालिका पंक्ति रंग freemarker के साथ वैकल्पिक पंक्ति रंग रखने का एक अच्छा, आसान तरीका क्या है?फ्रीमार्कर
क्या यह वास्तव में सबसे अच्छा तरीका है?
<#assign row=0>
<#list items as item>
<#if (row % 2) == 0>
<#assign bgcolor="green">
<#else>
<#assign bgcolor="red">
</#if>
<tr style='background-color: ${bgcolor}'><td>${item}</td></tr>
<#assign row = row + 1>
</#list>
मैं यह कर की कोशिश की:
<#assign row=0>
<#list items as item>
<tr style='background-color: ${(row % 2) == 0 ? "green" : "blue"}'><td>${item}</td></tr>
<#assign row = row + 1>
</#list>
लेकिन जाहिरा तौर पर तुम वहाँ में उपयोगकर्ता त्रिगुट ऑपरेटर नहीं कर सकता।
नोट: मुझे लगता है कि मुझे पहले इसका उल्लेख करना चाहिए था, लेकिन मैं सीएसएस कक्षाओं या जावास्क्रिप्ट का उपयोग नहीं कर सकता, क्योंकि यह HTML एक ईमेल संदेश में जा रहा है। गगनभेदी चुप्पी मैं अनुमान वहाँ ऐसा करने का कोई अच्छा तरीका है से
<#assign row=0>
<#list items as item>
<tr style='background-color: <#if (row % 2) == 0>green<#else>red</#if>'><td>${item}</td></tr>
<#assign row = row + 1>
</#list>
:
के लिए – itsadok
और कृपया "साफ" सीएसएस का उपयोग करें: आवश्यक होने पर प्रासंगिक वर्ग जोड़ें (वर्ग = "विषम" या कक्षा = "यहां तक कि") और फिर तदनुसार सीएसएस में शैली (यानी .even {background-color: gray;} .odd {पृष्ठभूमि-रंग: सफ़ेद;} –
इसके अलावा, 2.3.23 में, यदि वर्ग के नाम 'भी' और 'विषम' हैं, तो आप '
हममम ... ठीक है, यह सबसे अच्छा मैं के साथ आ गया है।
स्रोत
2009-02-04 11:30:18 itsadok
आपको पता है कि आप एक ही बात करने के लिए सीएसएस या जावास्क्रिप्ट इस्तेमाल कर सकते हैं: FreeMarker उपयोग करने के लिए कोई ज़रूरत नहीं है? –
FreeMarker का उपयोग करते हुए, इस सवाल का जवाब देने के सीमित तरीके हैं, लेकिन आप अकेले सीएसएस का उपयोग करने (जो अभी भी चिंताओं की जुदाई की अनुमति देता है) इच्छुक रहे हैं, तो यहाँ एक ही रास्ता है:
में निम्नलिखित रखो अपने स्टाइलशीट:
:फिर वैकल्पिक लाइनों परिभाषित करने के लिए निम्नलिखित
tr
वर्ग का उपयोगmany resources भी चुनने के लिए हैं।
संपादित करें: यदि आपका एचटीएमएल एक ईमेल में जा रहा है, तो आप यह सुनिश्चित नहीं कर सकते कि क्लाइंट का ईमेल क्लाइंट जो भी HTML आप इसे डालने की कोशिश कर रहा है उसे अनुमति देगा। उस बिंदु पर आपकी सबसे अच्छी शर्त फ्रीमार्कर का उपयोग यह है कि आपके पास यह कैसे है, सिवाय इसके कि आपको
style
टैग को हटाने की आवश्यकता है, और<tr>
टैग मेंbgcolor="color"
का उपयोग करके प्रत्येक पंक्ति के लिए रंगों का उपयोग करें।स्रोत
2009-02-04 11:43:44
अब मुझे वैकल्पिक "लाइनिया" और "लाइनब" के लिए एक रास्ता चाहिए - एक बहुत ही समान समस्या ... ईमेल टिप – itsadok
+1 _index एक साफ चाल है। धन्यवाद! – itsadok
एक समाधान तो यह करने पर निर्भर करता:
अपने टेम्पलेट में:
लेकिन, जैसा कि पिछले एक जबाब में कहा गया है, तो आप इस सीएसएस के साथ क्या कर सकते हैं, इस freemarker समाधान के बिना (http://www.w3.org/Style/Examples/007/evenodd देखें):
और फिर बस बिना किसी सामान्य तालिका का उपयोग करें पंक्तियों पर रों:
या एक freemarker उत्पन्न की मेज के साथ:
तो यह सब सीएसएस में है।
स्रोत
2010-02-16 19:54:31 prule
freemarker के साथ, आप उपयोग कर सकते हैं
string
निर्मित:स्रोत
2010-02-16 20:24:11
आपका स्वागत है StackOverflow के लिए! इस महान टिप को जोड़ने के लिए धन्यवाद! –
स्रोत
2010-05-19 18:30:43
इसे प्यार करें, स्वीकार्य उत्तर से बहुत आसान है। –
सहमत हैं, अच्छा एक। –
नोट: सूची के लिए चर के साथ "आइटम" को ऊपर बदलें। उदाहरण के लिए, <#list सरणी लाइन> ... [line_index% 2] ...#list> – Nathan
आप निम्न का उपयोग कर निर्माण FreeMarker में त्रिगुट ऑपरेटर अनुकरण कर सकते हैं: $ {? हालत स्ट्रिंग (result_for_true, result_for_false)} ।
स्रोत
2013-09-24 08:43:37
FreeMarker 2.3.23 में:
स्रोत
2015-07-05 17:29:42 ddekany
संबंधित मुद्दे