Chosen.js通过文本获得价值

时间:2018-03-28 15:10:52

标签: javascript jquery jquery-chosen

我有一个选择的选择,我希望通过使用它们的文本值来获取选择选项的值。 https://harvesthq.github.io/chosen/选择此选项后,它会将选择字段替换为更高级的字段。

所以我知道如何用值更新所选的select,但由于某种原因,所选的js库删除了值并用数字替换它们。

<select name="customProductData[4][5]" class="vm-chzn-select chzn-done" id="selOIG" style="display: none;">
    <option value="0">Choose an option</option>
    <option value="5">Green</option>
    <option value="8">Brown</option>
    <option value="7">Black</option>
    <option value="6">Red</option>
    <option value="9">Blue </option>
</select>

这是我的选择,您会看到带有值

的文本

没问题,但现在我有了文字,我需要相应的值。

jQuery('select').val(17);
jQuery('select').trigger("liszt:updated");

这是如何使用值更新,完美运行。但现在我必须通过文字获得价值。我得到了这个,但这不起作用,可能是因为它的选择.js:

console.log($('select').find('option[text="'+ colorThing +'"]').val());
console.log($('select option').filter(function () { return $(this).html() == colorThing; }).val());

其中colorThing是我想在选择的选择框中查找的文本。

任何人都知道如何使用文本更新所选内容,或获取所选文本的值。

2 个答案:

答案 0 :(得分:0)

试试这个。 如果我找到更好的解决方案,我会发布它

$。每个($( “#SupplyChainType”)[0]可供选项,功能(索引,值){

if(value.innerHTML=="Overage")
{
    x=value.value
}

})

答案 1 :(得分:0)

我在Sandeep V的帮助下找到了答案:

$("select option").each(function(index,value)
{

    if(value.innerHTML.trim()==colorThing.trim())
    {

       correctValue=value.value
    }
});