2013-10-05 45 views
0

如果列表只包含單個元素,我可以更改SELECT元素的樣式?Html下拉菜單。不同的風格列表,如果只有單個元素

我:

<select class="attribute_select"> 
<option selected="selected">001</option> 
<option>002</option> 
</select> 

我需要:

<select class="attribute_select_single"> 
<option selected="selected">001</option> 
</select> 

更新

<select name="{$groupName}" id="group_{$id_attribute_group|intval}" class="attribute_select" onchange="findCombination();getProductAttribute();"> 
{foreach from=$group.attributes key=id_attribute item=group_attribute} 
<option value="{$id_attribute|intval}"{if (isset($smarty.get.$groupName) && $smarty.get.$groupName|intval == $id_attribute) || $group.default == $id_attribute} selected="selected"{/if} title="{$group_attribute|escape:'htmlall':'UTF-8'}"> 
{$group_attribute|escape:'htmlall':'UTF-8'}</option> 
{/foreach} 
</select> 
+0

出了什麼問題,你現在有什麼? – JJJ

+0

我如何檢查單個元素?我的例子是結果html。我的清單在PHP中創建。 – antohabio

+0

您需要顯示創建下拉菜單的PHP代碼。 – JJJ

回答

0

你可以做到這一點與jQuery通過改變類的SELECT元素:

$(function() {  
    if ($('select.attribute_select option').length == 1) 
    $('select.attribute_select').attr('class', 'attribute_select_single'); 
} 

您可以用@count修改做模板,以及:

取代:

class="attribute_select" 

有:

class="{if $group.attributes|@count eq 1}attribute_select_single{else}attribute_select{/if}" 
+0

Tnx。最好的解決方案。 – antohabio