-1

我有一个 PHP 代码,它主动生成一个 Select 输入,其中包含 5 个不同的选项。

现在,我还想在 div 中将数字 2、3、4 和 5 显示为文本。

请注意,我想在我的 DIV 中省略第一个选项。

<select>
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
</select>

也相应地显示:

<div><img src="#" /> 2</div>
<div><img src="#" /> 3</div>
<div><img src="#" /> 4</div>
<div><img src="#" /> 5</div>

我尝试使用 document.forms[0].select.value; 但它只显示所选值而不是所有选项。此外,我想过滤第一个选项,我该怎么办?任何帮助表示赞赏。


selectOP 在对答案的评论中提供的元素的实际 HTML :

<select class="last" id="property_types" name="property_types">
    <option selected="selected" value="0">View all Property Types</option>
    <option value="96" class="level-0">Apartment</option>
    <option value="9" class="level-0">Building</option>
    <option value="3" class="level-0">Land</option>
    <option value="97" class="level-0">Office</option>
</select>
4

1 回答 1

3

我建议:

$('option').slice(1).each(
    function(){
        var text = $(this).text(),
            outputTo = $('#output'),
            div = $('<div />').text(text),
            img = $('<img />', {'src' : '#'}).prependTo(div);
        div.appendTo(outputTo);
    });​

JS 小提琴演示

请注意,这假设使用特定div的方法来包含此方法的输出,显然要根据口味进行调整。

修改上述代码以提供特定的选择器,以响应 OP 在对此答案的评论中的发布代码:

$('#property_types option').slice(1).each(
    function(){
        var text = $(this).text(),
            outputTo = $('#output'),
            div = $('<div />').text(text),
            img = $('<img />', {'src' : '#'}).prependTo(div);
        div.appendTo(outputTo);
    });​

参考:

于 2012-08-16T11:37:21.563 回答