2012-08-03 24 views
5

Her türün kendi PARAMETRELERİ olan bir TYPES seçme kutum var. TYPES seçme kutusu, bir şablonu çağıran ve görünümümde PARAMETER seçme kutularını işleyen bazı AJAX'ları tetikler. Parametreler isim: değer çiftlerinden oluşur, böylece her adın birçok değeri olabilir.Birden çok g notu: birden fazla koşul için test yapıyorsa

Bazı parametreler, kullanıcının her ad için birden çok değer seçmesi için birden çok = 'true' değerine ihtiyaç duyarken, diğer parametrelerin yalnızca bir seçenekle sınırlı olması gerekir. Benim gsp sayfasında

Bunları bir grup var:

<g:if test="${it?.getKey().toString().equals('PARAMETER_A')}"> 
     <td><g:select multiple="true" optionKey="id" optionValue="value" name="sampleParameters" id="parameter" value="${params?.sampleParameters}" from='${it?.getValue().sort()}'></g:select></td> 
    </g:if> 
    <g:if test="${it?.getKey().toString().equals('PARAMETER_B')}"> 
     <td><g:select multiple="true" optionKey="id" optionValue="value" name="sampleParameters" id="parameter" value="${params?.sampleParameters}" from='${it?.getValue().sort()}'></g:select></td> 
    </g:if> 

Sorunum birden çok değer seçmek gerekir belirli bir TİP için 6 parametre olması, gerisi yok. Yukarıdaki gibi açık bir şekilde yazmak yerine, bir g'de birden fazla şeyi test edebilmem için bir yol var mı? örneğin:

if(something.equals(PARAMETER_A) || something.equals(PARAMETER_B)) 

vb

harika yılında Java'nın yaklaşımına benzer bir şey yapmak için bir yolu var mı?

cevap

12

Kepçeler g:if sadece test özniteliğinde groovy kullanır. Sorunuza cevap vermek için, evet:

<g:if test="${something.equals(PARAMETER_A) || something.equals(PARAMETER_B)}"> 
</g:if> 
+1

Teşekkürler. Her şekilde denedim ama bu. – Universitas

İlgili konular