2010-02-07 10 views
64
#item 

आईडी = "आइटम"मैं हैमल में गतिशील आईडी कैसे बना सकता हूं?

.box#item 

वर्ग = "बॉक्स" और आईडी = "आइटम"

.box#="item "+x 

वर्ग के साथ एक div बनाता है के साथ एक div बनाता है के साथ एक div बनाता = " बॉक्स "और एक टिप्पणी '# =" आइटम "+ एक्स'

.box# 
    ="item"+x 

फेंकता" अवैध तत्व: वर्गों और आईडी मान होना चाहिए "।

मैं आईडी को एक चर में कैसे सेट करूं?

लंबे प्रपत्र तरह से (आईडी एक नियमित रूप से प्रत्येक का उपयोग करता है जैसे यह थे):

उत्तर

118

वहाँ दो तरीके हैं

.box{:id => "item_#{x}"} 

इस का उत्पादन (x क्या कभी x.to_s का आकलन करती है):

<div class="box" id="item_x"> 

संक्षिप्त रूप रास्ता:

.box[x] 

का उत्पादन निम्नलिखित संभालने xitem का एक उदाहरण है:

<div class="box item" id="item_45"> 

अधिक जानकारी के लिए HAML reference देखें।

+2

मुझे इसे काम करने के लिए व्हाइटस्पेस को हटाना पड़ा: .box {: id => "item _ # {x}"} – jethroo

+0

शॉर्टकट विधि में आप स्ट्रिंग और स्ट्रिंग-कन्वर्टेड चर को कैसे जोड़ते हैं? मैंने '.box [" item "+ s]' और बिना किसी सफलता के वेरिएंट की कोशिश की। क्या स्क्वायर ब्रैकेट का उपयोग करके शॉर्टकट तरीका केवल चर के साथ संगत है? – ahnbizcad

+1

@gwho शॉर्टकट विधि के लिए x को आइटम का उदाहरण होना आवश्यक है। जो भी आप ढूंढ रहे हैं उसे प्राप्त करने के लिए लंबे फॉर्म स्ट्रिंग इंटरपोलेशन फ़ॉर्म का उपयोग करें। .box {: id => "item # {s}"} – EmFi

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