我的HTML文件中有以下代码
<select>
<option>1</option>
<option>2</option>
<option>3</option>
<!-- ......... -->
<option>50000</option>
</selcet>
使用jQuery我得到了
var subHTML=$("select").html();
我可以在subHTML字符串中通过innerHTML找到一个选项标签,插入属性“selected”,然后将编辑后的字符串放回到select标签中
$("select").html(editedString);
修改
我试过
var strel=$(subHtml).find('option:contains("123")').attr('selected','selected');
$("select").html(strel);
但它只为select标记添加了一个选项。
答案 0 :(得分: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");
答案 1 :(得分: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);
答案 2 :(得分:0)
jQuery Contains选择器会有所帮助。
<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>
答案 3 :(得分: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");
});