由于某种原因,我只有在下面提醒时才转到第一个选项,然后它存在于我的整个功能中。它从不遍历每个选项:

    function SelectAlbumOption(iAlbumID, iAlbumDropdownID)
    {
        var dropdownID = '#' + iAlbumDropdownID;

        $(dropdownID).each(function(index, currentOption)
        {
            alert("(currentOption).attr('value'): " + $(currentOption).attr("value"));
            if($(currentOption).attr("value") == iAlbumID)
            {
                alert("matched option");
                $(currentOption).attr("selected", "yes");
                return false;
            }
        });
    }


在上面的函数被调用之前,我向该选择添加了选项,因此在调用此函数之前它们确实存在。

最佳答案

您是否遗漏了关键代码?因为您没有告诉我们是否多次调用SelectAlbumOption

您的函数具有一个ID,并对1个元素(唯一ID)执行.each

你是说要做

    var dropdownID = '#' + iAlbumDropdownID;
    $('option', dropdownID).each();


要么

$(dropdownID + ' option').each()

07-24 15:47