从div中的select中删除/隐藏选项

时间:2012-11-19 07:05:57

标签: php javascript smarty

我有两个不同的div(都是动态生成的)具有相同的内容

CODE TPL:

{foreach from=$rozopt item=r}
<div id="optionsy{$r.optionid}">
{foreach from=$options item=q}
    <option id="{$q.optionid}" value="{$q.optionid}">
        {$q.option_name|escape}
    </option>
{/foreach}
</div>
{/foreach}

结果:

<div id="optionsy29216">
    <option id="29218" value="29218">
        wysyłamy w 24 godziny
    </option>
    <option id="31848" value="31848">
        1-3 dni
    </option>
</div>
<div id="optionsy29217">
    <option id="29218" value="29218">
        wysyłamy w 24 godziny
    </option>
    <option id="31848" value="31848">
        1-3 dni
    </option>
</div>

因此你可以看到我有两个不同ID但具有相同内容的div。现在我想删除一个选项,例如<option id="29218" value="29218">但只能从一个当前加载的div中删除。此代码来自x-cart,我想隐藏缺货的变种。 / max avail是0 /

JS CODE:

if (hasOwnProperty(variants[x][1], c)){
        var max_avail = variants[variantid][0][1];
        var sku = variants[variantid][0][5];
        globalSku = sku;
        rozkol = document.getElementsByClassName('rozkol')[0].id;
        id = getPOValue(c); //option id/value
        rozkolv = getPOValue1(rozkol);
         if((max_avail == 0)){  
            element = document.getElementById(id);
            element.parentNode.removeChild(element);
         }
    }

使用此代码,我可以从两个div中删除选项。

1 个答案:

答案 0 :(得分:0)

如果你使用JQuery。你可以用这行代码实现你的目标

$({parentdivid}).find({optionid}).remove(); 

div id = optionsy29217;选项id = 29218

$('#optionsy29217').find('#29218').remove();