如何在javascript中按文本搜索选择选项

时间:2014-11-28 20:25:44

标签: javascript php select

我有一个可见和隐藏的选择选项。当用户选择某些内容时,我想获取所选选项并在隐藏选择选项中搜索文本。因为我需要与所选文本匹配的隐藏选择选项的val。首先我尝试了;

var testx=document.getElementById("priceMatrix");
testx.options[testx.selectedIndex].text=toAdd+"|"+cupSize;

它有效,我可以设置文本但仍然无法设置值。我第二次尝试了;

    var myText = toAdd+"|"+cupSize;
    $('#priceMatrix').filter(function () { return $(this).html() == myText; }).prop('selected', true)
    var alertText = $("#priceMatrix option:selected").val();
    alert(alertText);

但是它仍然不起作用,$(" #priceMatrix选项:选择")。val();给出第一行的值,而不是选中的值。

那么,问题是什么?它是关于按钮点击?

1 个答案:

答案 0 :(得分:0)

我找到了解决方案并希望分享。我做了一个for循环进入选择。当我找到匹配的文本时,我将其设置为选中然后我得到了值。

    var selectedOption = toAdd+"|"+cupSize;
    var selectLength = document.getElementById("priceMatrix").length;
    var priceMatrix = document.getElementById("priceMatrix");

    for(i=0; i<selectLength;i++){
        if (priceMatrix[i].text === selectedOption) {
            priceMatrix[i].selected = 'selected';
            var price = $("#priceMatrix option:selected").val();
            var totalPrice = itemNbr1*price;
        }

    }
    alert(totalPrice);