<select name=’sel’ id=’sel’>
<option value=’1′>1</option>
<option value=’2′ selected=’selected’>我被选中了</option>
<option value=’3′>2</option>
</select>
<script>
alert($("select[@name='sel'] option[@selected]").text());
$("#sel").val(’2′);
alert($("select[@name='sel'] option[@selected]").text());
</script>
查询被选中的option中的内容当然也可以用 alert($("#sel option[@selected]").text());
稍微解释一下:
select[@name='sel'] option[@selected] 表示具有name 属性,并且该属性值为’sel’ 的select元素 里面的具有selected 属性的option 元素;可以看出有@开头的就表示后面跟的是属性。
//select选项添加
$(''#optionAdd'').click(function(){
var s = $(''#txtSelect'').val();
if(s != ''''){
s = ''<option>'' + s + ''</option>'';
$(''#ll'').append(s);
}else{
alert(''不能为空'');
}
});
//select选项删除
$(''#optionDel'').click(function(){
$(''#ll option[selected]'').remove();
});
//select选项修改
$(''#optionEdit'').click(function(){
$(''#ll option[selected]'').text(''ycj'');
});
//获取select更改后的值
$(''#ll'').change(function(){
$(''#txtSelect'').val($(this).val());
});
//select 元素中的比较
$(''#optionCompare'').click(function(){
//方法1
$(''#result'').text(''no'');
for(i=0; i<$(''#ll option'').length; i++){
if($(''#ll option'').eq(i).text() == $(''#txtSelect'').val()){
$(''#result'').text(''yes'');
}
}
//方法2
$(''#result'').text(''no'');
$(''#ll option'').each(function(){
if($(this).text() == $(''#txtSelect'').val()){
$(''#result'').text(''yes'');
}
});
});
个人感觉添加操作不理想,但暂时也找不到什么好的办法