如何获得这个ul列表的价值

时间:2011-10-25 15:31:24

标签: ajax list jquery

代码是这样的:

<ins>
    <div class="dropdown">
        <ins>&nbsp;</ins>
        <ul id="eventselect">
            <li><a href="javascript:;" rel="Birthdays">Birthdays</a></li>
            <li><a href="javascript:;" rel="Graduation">Graduation</a></li>
            <li><a href="javascript:;" rel="Wedding">Wedding</a></li>
            <li><a href="javascript:;" rel="Farewell">Farewell</a></li>
            <li><a href="javascript:;" rel="Party">Party</a></li>
            <li><a href="javascript:;" rel="Bbq">Bbq</a></li>
            <li><a href="javascript:;" rel="Party">Party</a></li>
            <li><a href="javascript:;" rel="Warming_party">Housewarming</a></li>
            <li><a href="javascript:;" rel="Christmas">Christmas</a></li>
            <li><a href="javascript:;" rel="Other">Other</a></li>
        </ul>
    </div>
</ins>

我尝试使用以下代码来访问该值:

$("#eventselect").val();
$("#eventselect :selected").text();

但没有任何效果,现在我的问题是如何获得这个价值。

编辑 - 1

你好,伙计们, 对不起,我意识到我不应该使用这个$(“#eventselect:selected”)。text(); 。有一个问题,我得到的列表以一个空的选择框开始,我认为它来自<ins>&nbsp;</ins>,如果我删除,我没有得到列表中的任何内容。使用该标记,我可以使用$("#eventselect li").text();访问值或文本。但即使空白的第一个李在那里,价值也是生日。如何纠正它?

1 个答案:

答案 0 :(得分:4)

一种访问UL的“选定值”的方法,如果你可以将其中一个与其他人区分开来,可能是一个类。假设所选择的一个在LI元素上有selected类。然后你可以像这样访问它:

$('#eventselect li.selected a').text();

或者如果你想要rel属性:

$('#eventselect li.selected a').attr('rel');

如果一种方式将所选择的一种与其他方式区分开来,那就是这样做:

$('#eventselect li a').click(function(){
    $('#eventselect li').removeClass('selected'); // remove all selected class values
    $(this).parent().addClass('selected'); // add class selected to selected value
});

您也可以使用click事件获取所选值,如下所示:

$('#eventselect li a').click(function(){
    $(this).attr('ref'); // Get the ref attribute from the "a" element
});