0

我有一个下拉列表/菜单,每个选项都有一个值。我希望将该值传递给一个元素以确定所需的样式。这是我的原始 html,希望 jquery 能够做到这一点。它也需要传递的元素称为

 <div class="user-text">

所以我希望它可以为每个值添加一个这样的类。

 <div class="user-text curveMeTop">

这是我的价值观清单

 <div class="top15">
  <div class="label">Text Warp</div>
  <select name="warp-list">
    <option value="curveMeTop">Curve Top</option>
    <option value="curveMeBottom">Curve Bottom</option>
    <option value="wave">Wave</option>
    <option value="buldge">Buldge</option>
    <option value="skew">Skew</option>
  </select>
  </div>
4

2 回答 2

1

干得好:

$(function(){
    $('#warp-list').on('change', function() {
        $('div.user-text').attr('class', 'user-text ' + $(this).find('option:selected').val());
    });
});

例如,参见JSFiddle

我通过attr而不是 addClass 设置类的原因是,每次更改下拉选择时,您都会不断添加其他类。另一种方法是首先尝试删除每个类选项,或者将类重置为空,然后添加“用户文本”类以及您要添加的类。

于 2012-05-25T03:05:40.037 回答
0

你可以使用addClass方法::

$('select').change(function(){
  var cls = $(this).val();
  $('.user-text').addClass(cls);
})
于 2012-05-25T03:06:03.283 回答