如何使我的select元素的标题等于所选选项的标题?

时间:2012-08-17 09:09:10

标签: jquery

我有一个看起来像这样的选择:

<select id="select-site" title="????">
   <optgroup label="City">
      <option title="ee" value="1">123</option>
      <option title="cc" value="2">456</option>
      <option title="dd " value="3">789</option>
      <option title="xx" selected="selected" value="4">aa</option>
   </optgroup>
</select>

如何在文档加载了选择的标题后才能使它成为????更改为所选选项的标题。另外,如何更改所选选项时<select>的标题会再次更新。

4 个答案:

答案 0 :(得分:5)

试试这个:

<script type="text/javascript">
$(document).ready(function(){
$('#select-site').change(function() {
var selectedVal = $('#select-site option:selected').attr('title');
$('#select-site').attr("title",selectedVal) ;
});
});

</script>

答案 1 :(得分:1)

这会将title #select-site属性设置为所选title的{​​{1}}

option

要设置$('#select-site').change(function() { $(this).prop('title', $('option:selected', this).prop('title')); }); 属性的初始值,您需要title更改事件: -

trigger

$('#select-site').trigger('change');

所有这些都需要包含在$('#select-site').change();中,如下面的评论所述。

答案 2 :(得分:1)

试试这个以获得完整的解决方案

$(document).ready(function() {
    $('#select-site').change(function() {
        $(this).attr('title', $(this).find('option:selected').attr('title'));
    });
    $('#select-site').trigger('change');
});​

答案 3 :(得分:0)

试试这个:

$('#select-site').change(function(){
     value = $(this + ' option:selected').val();
     $(this).attr('title',value);
});

它会起作用。