0

我的 HTML 文件中有以下代码

   <select>
        <option>1</option>
        <option>2</option>
        <option>3</option>
        <!-- ......... -->
        <option>50000</option>
   </selcet>

使用 jQuery 我得到

      var subHTML=$("select").html();

我可以通过subHTML字符串中的innerHTML找到一个选项标签,插入属性“selected”,然后将编辑后的字符串放回选择标签

      $("select").html(editedString);  

编辑

我试过了

  var strel=$(subHtml).find('option:contains("123")').attr('selected','selected');
  $("select").html(strel);       

但它只向选择标签添加了一个选项。

4

4 回答 4

1

这应该有效。(未测试)。

var to_replace = $("select").find('option:contains("The text i want to find")');
to_replace.attr("selected", "selected");
to_replace.text("The new text");
于 2013-02-22T08:50:04.150 回答
0
$('option').filter(function() {
   if(this.innerHTML === '123') {
      $(this).attr('its-me', 1);
      return true;
   }
   return false;
});

编辑,或者只是:

$('option').filter(function() {
   return this.innerHTML === '123';
}).attr('its-me', 1);
于 2013-02-22T08:55:25.453 回答
0

jQuery 包含选择器会有所帮助。

<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript">

    $(function()
    {
        var searchReplace = $("select").find('option:contains("editme")').attr("selected", "selected").text("foundme");
    });

</script>

<select>
    <option>1</option>
    <option>2</option>
    <option>editme</option>
    <option>3</option>
    <option>50000</option>
</selcet>
于 2013-02-22T08:56:04.563 回答
0

这是工作样本:

选择

如果这是您的 HTML:

<select>
    <option>1</option>
    <option>2</option>
    <option>3</option>
</select>

您可以使用 :

$("select option").each(function(){
if ($(this).text() == "2")
   $(this).attr("selected","selected");
});
于 2013-02-22T08:56:35.547 回答