根据值中的属性键选择选项

珍妮佛
<option value="abc">abc</option>

我知道我可以做,$('select').val('abc')但是如果我有这样的事情怎么办

<option value='{"name":abc,"id":123}'>abc</option>

如何选择abc基于id

杜沙尔

value不是有效的对象。abc应该用引号引起来。

<option>

<option value='{"name":"abc","id":123}'>abc</option>
                       ^   ^

您可以使用filter()来过滤出像对象一样属性字符串<option>中带有idas 123元素value

然后,prop('selected', true)可以使用已过滤option的设置为选定选项。

演示:

// Filtering all options in the select
$('select option').filter(function() {
    var val = $(this).val(), // Get value
        obj = {};

    // Try to parse the string to JSON
    try {
        obj = JSON.parse(val);
    } catch (e) {
        obj = {}; // Empty object if parsing fails
    }

    // Filter based on the `id` in the value
    return obj.id === 123;
}).prop('selected', true); // Set the option as selected
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<select>
    <option value="Hello">fdsafds</option>
    <option value='{"name":"abc","id":123}'>abc</option>
</select>


正如Rayon评论的那样,我建议您不要使用object作为值,而建议使用HTML5data-*自定义属性来将数据存储在element上。

$('option[data-id="123"]').prop('selected', true);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<select>
    <option value="Hello" data-name="bond" data-id="007">fdsafds</option>
    <option value="something" data-name="abc" data-id="123">abc</option>
</select>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

根据动态表中的另一个选择选项选择选项值

来自分类Dev

根据输入中的所有值选择选项

来自分类Dev

根据选择选项更改属性

来自分类Dev

根据属性更改选择选项

来自分类Dev

根据选择选项更新输入值

来自分类Dev

根据不同的选择选项传递值

来自分类Dev

如何根据值选择选项

来自分类Dev

根据父选择元素的id属性更改选择选项的值

来自分类Dev

从特定选择选项获取属性值

来自分类Dev

根据codeigniter中的要求选择选项

来自分类Dev

根据具有自定义值属性的选择选项显示图像

来自分类Dev

JavaScript - 如何根据选择选项中的性别选择更改输入文本值

来自分类Dev

根据附加选择框中输入框的值选择选项框

来自分类Dev

在选择选项中显示值的问题

来自分类Dev

在html中显示选择选项的值

来自分类Dev

在html中显示选择选项的值

来自分类Dev

在html中显示选择选项的值

来自分类Dev

在html中显示选择选项的值

来自分类Dev

根据多次迭代中的选择更改选择选项

来自分类Dev

jQuery-根据json值设置选择选项

来自分类Dev

根据复选框更改选择选项的值

来自分类Dev

根据选择选项值 jQuery 显示隐藏 div

来自分类Dev

如何在ReactJS中检索选择选项的数据属性值?

来自分类Dev

根据选择选择值

来自分类Dev

使用jQuery按值属性对选择选项进行排序

来自分类Dev

选择选项时总结属性值和文本

来自分类Dev

Magento:属性选择选项

来自分类Dev

根据字典中的百分比选择选项

来自分类Dev

如何使用jquery在选择选项中设置选择的值?