如何通过名称

时间:2015-05-05 09:18:50

标签: javascript php jquery

如何通过名称

在jquery中选择选项

以下是fiddle

这是脚本

<select name="zoom_cat[]" style="margin-left:15px;" id="contact_country">
    <option value=""  selected="selected">Nothing</option>

  <option value="0">Singam</option>
  <option value="1">Karadi</option>
  <option value="2">Poonai</option>
  <option value="3">Yaanai</option>
</select>

这是脚本

var myText = "Singam";
        $("#contact_country option:text=" + myText +"").prop("selected", "selected");

3 个答案:

答案 0 :(得分:2)

使用:contains选择器

$("#contact_country option:contains('" + myText +"')").prop("selected", "selected");

演示:Fiddle

注意:使用contains可以返回部分结果,因此迭代并找到元素ex可能更安全:http://jsfiddle.net/arunpjohny/54w5rq5m/2/

所以

var myText = "Singam";
$("#contact_country option").each(function () {
    if ($(this).text() == myText) {
        $(this).prop("selected", true);
        //since element is found no need to iterate further
        return false;
    }
});

演示:Fiddle

答案 1 :(得分:0)

您还可以使用filter选项进行完全匹配。包含也为您提供部分匹配。

$('#contact_country option').filter(function() {
                    return $.trim($(this).text()) === myText;
                }).prop('selected', true);

答案 2 :(得分:0)

使用:contains()代替:text。试试 -

    var myText = "Singam";
    $("#contact_country option:contains(" + myText +")").attr("selected", true);