如何使用jquery选择动态创建的选项?

火焰82

如何使用jquery选择动态创建的选项?

我已经用jquery创建了一个动态下拉菜单。选项由“数据”数组填充。

创建选项后,我尝试通过查询选择特定的选项。在我的示例中为“ opt2”。

在此示例中,一切正常。但是在我的应用程序中,始终会选择第一个选项。仅当我在alert()之前创建时,$("select").val('opt2');选择正确的选项。

我认为这是因为选择选项是动态创建的,当我尝试选择它们时它们还没有准备好。

const data = ['opt1', 'opt2', 'opt3'];

for (let i = 0; i < data.length; i++) {
  console.log(data[i]);
  $('#maschAusw').append($("<option>").attr('value', data[i]).text(data[i]));
}


$("select").val('opt2');
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<select id="maschAusw">
  <option selected disabled value="">Choose...</option>
</select>

即时通讯

首先,如果<select>页面上有多个元素,则选择器并不理想您最好使用#maschAusw

您必须指定selected属性。您可以执行以下操作:

$("#maschAusw").children('option[value="opt2"]').prop('selected', true);

您还应该selected从当前选择的选项中删除该属性,可以按照以下步骤进行操作:

$("#maschAusw").children('option[value="opt2"]')
               .prop('selected', true)
               .siblings()
               .prop('selected', false);

请参见下面的工作示例:

const data = ['opt1', 'opt2', 'opt3'];

for (let i = 0; i < data.length; i++) {
  console.log(data[i]);
  $('#maschAusw').append($("<option>").attr('value', data[i]).text(data[i]));
}


$("#maschAusw").children('option[value="opt2"]')
               .prop('selected', true)
               .siblings()
               .prop('selected', false);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<select id="maschAusw">
  <option selected disabled value="">Choose...</option>
</select>

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用选项填充动态创建的选择

如何使用jquery创建动态选择字段?

使用物化CSS时如何动态创建选择选项

如何创建动态选择选项

在每行上使用删除按钮动态创建表单行并在每行上选择选项 - JQUERY

我想使用 javascript 或 jQuery 创建动态选择选项列表

使用 jQuery/javaScript 从选择框中动态选择选项

jQuery如何选择动态创建的单选按钮

动态创建选择选项

在ASP.NET Core中使用jQuery动态创建选择并添加数据库中的选择选项

如何在laravel中创建动态选择选项?

如何使用jQuery使“选择选项”选择数量的选项

如何使用Angular JS选择动态选择选项值

如何使用 Jquery 在动态创建的表数据上显示查看更多选项?

如何使用jQuery选择下拉选项?

如何使用jQuery在HTML多重选择框中创建“全选”选项?

使用 jQuery 将数据库中的选择选项填充到动态选择选项

使用动态选项进行选择

为选择 JQuery 创建选项

如何选择从动态下拉使用Selenium的选项?

如何使用数组元素为选择框创建动态选项?并在另一个jsp页面中使用该选项框值?

使用jQuery创建一个选择下拉选项的链接

创建使用jQuery选择的所有选项的锂

如何使用JQuery在选择元素中设置选择的选项?

如何使用jQuery在选择框中禁用未选择的选项?

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

如何在使用jQuery的选择中取消选择选项

如何使用jQuery在多个选择中取消选择所选选项

如何使用FXML在JavaFX中动态创建选项卡?