javascript - 使用 jQuery 获取包括 HTML 元素的选择选项

标签 javascript jquery html html-select

我有一个带有一些选项的选择输入。例如,

<select id="myArea">
    <option class="myClass_1" style="color:red;" value="1">Area 1</option>
    <option class="myClass_2" style="color:green;" value="2">Area 2</option>
    <option class="myClass_1" style="color:red;" value="3">Area 3</option>
    <option class="myClass_1" style="color:red;" value="4">Area 4</option>
</select>

现在我想迭代选择并获取具有 class、style 等属性的所有选项元素,我尝试使用 .html() 来获取它>。但它不起作用。

var optionStr = '';
$('#myArea option').each(function() {

    optionStr += $(this).html(); // like <option class="myClass_1" style="color:red;" value="1">Area 1</option>, etc.,

});

预期输出:

optionStr = '<option class="myClass_1" style="color:red;" value="1">Area 1</option><option class="myClass_2" style="color:green;" value="2">Area 2</option><option class="myClass_1" style="color:red;" value="3">Area 3</option><option class="myClass_1" style="color:red;" value="4">Area 4</option>';

我应该如何得到这个?我必须使用哪个 jQuery 选择器

提前致谢。

最佳答案

访问outerHTML属性(property)

var optionStr = '';
$('#myArea option').each(function() {
    optionStr += this.outerHTML; 
});

var optionStr = '';
$('#myArea option').each(function() {
    optionStr += this.outerHTML; 
});
console.log(optionStr)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="myArea">
    <option class="myClass_1" style="color:red;" value="1">Area 1</option>
    <option class="myClass_2" style="color:green;" value="2">Area 2</option>
    <option class="myClass_1" style="color:red;" value="3">Area 3</option>
    <option class="myClass_1" style="color:red;" value="4">Area 4</option>
</select>

<小时/>

但是您也可以获取父 select('myArea') 元素的 html()

var optionStr = $('#myArea').html();

var optionStr = $('#myArea').html();
console.log(optionStr)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="myArea">
    <option class="myClass_1" style="color:red;" value="1">Area 1</option>
    <option class="myClass_2" style="color:green;" value="2">Area 2</option>
    <option class="myClass_1" style="color:red;" value="3">Area 3</option>
    <option class="myClass_1" style="color:red;" value="4">Area 4</option>
</select>

关于javascript - 使用 jQuery 获取包括 HTML 元素的选择选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41426535/

相关文章:

javascript - 使用 Jquery 隐藏侧面菜单栏

jquery - 使用 this.securejson = true;

Javascript随机背景图片更改onload

javascript - 使用 jquery 或 javascript 删除部分属性值

javascript - 如何将一个字段向右移动

javascript - 如何用javascript显示一个div

javascript - 带 for 循环的嵌套 Promise 不起作用

javascript - 为什么 javascript setTimeout 会同时执行所有操作?

javascript - MVC 在 jQuery 中更新 HiddenFor 并提交到 Controller

PHP删除用户收藏夹