jquery - 选择另一个选项时更改选项的文本

标签 jquery select text

当从之前的下拉列表中选择特定选项时,我试图更改一组选择选项的文本。

这是我的 HTML:

<select class="select" id="eventType" name="eventType" size="1">
    <option value="0"></option>
    <option value="wedding" name="wedding">Wedding</option>
    <option value="private_party" name="private_party">Private Party</option>
    <option value="corporate" name="corporate">Corporate Event</option>
</select>

<select class="select" id="band_type_choices" name="bandType">
    <option value="0"></option>
    <option value="acoustic" class="acoustic" name="acoustic">Acoustic</option>
    <option value="jazz" class="jazz" name="jazz">Jazz/Easy Listening</option>
    <option value="acoustic_jazz" class="acoustic_jazz" name="acoustic_jazz">Acoustic + Jazz/Easy Listening</option> 
    <option value="party" class="party" name="party">Party</option>
    <option value="acoustic_party" class="acoustic_party" name="acoustic_party">Acoustic + Party</option> 
    <option value="jazz_party" class="jazz_party" name="jazz_party">Jazz/Easy Listening + Party</option> 
    <option value="acoustic_jazz_party" class="acoustic_jazz_party" name="acoustic_jazz_party">Acoustic + Jazz/Easy Listening + Party</option> 
</select>

当有人从第一个下拉列表中选择“婚礼”时,我想更改所有#band_type_choices 下拉列表的文本

这是我到目前为止使用的 jQuery,但它什么也没做:

$('#eventType').change(function() {
    var eventTypeName = $("#eventType option:selected");
    
    if (eventTypeName.is(".wedding") ) {
        $('#band_type_choices option:contains("acoustic")').text('Wedding Ceremony');
    }
});

最佳答案

你的选择器搞砸了

$('#eventType').change(function() {
    var eventTypeName = $("#eventType option:selected");

    if (eventTypeName.is('[name="wedding"]') ) {
        $('#band_type_choices option[name="acoustic"]').text('Wedding Ceremony');
    }

});

婚礼选项没有类 wedding,它的 name 属性设置为 wedding,而且 :contains 区分大小写,因此最好使用名称选择器来设置值

演示:Fiddle

关于jquery - 选择另一个选项时更改选项的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19245794/

相关文章:

javascript - 使用 jQuery 从最近的范围获取文本

javascript - 如何使用 Jquery 中的切换类更改内部 html 内容?

vb.net - 使用 SaveFileDialog 将数据保存到文本文件?

javascript - Document.Open() 不起作用

javascript - 在保留空间的同时淡化 DIV

mysql - 选择 mysql 中只有开始日期和结束日期的事件

sql - 如何将别名添加到 group by 子句

c# - 如何以编程方式选择 WPF DataGrid 中的行或单元格?

java - 在java中打印带有一些文本的图像

.net - 制作自定义字符串编码器.net