处理`<select>`只有一个动态生成的值</select>

时间:2012-04-11 07:12:04

标签: jquery html

我有一个动态生成的<option> .. </option>,插入<select>

当一个案例出现只有<option>值的情况时,我不希望用户查看打算单击的组合框并期望更多值。

由于只有一个值,我可以关闭<select>的活动以生成Drop Down,就像停用它一样吗?

这会 -

<select disabled="disabled">

也意味着我无法通过$_POST提交表单上的变量值?

我可以使用jQuery做点什么吗?我更喜欢HTML。

修改

刚刚检查过:<select disabled="disabled">不允许发布<select>

的表单数据

2 个答案:

答案 0 :(得分:0)

在伪代码中:

switch (number of options)
    case 0:
        display nothing
        break;
    case 1:
        display the option as normal text (maybe in a simple <div>)
        break;
    default:
        create and display a combo box
        break;

别忘了:Jquery是javascript!你仍然可以在javascript中做所有的事情。

答案 1 :(得分:0)

您可以在唯一选项中使用selected,而不是该选项的值:

<select name="data" style=" disabled="disabled">  
     <option value="1" selected>1</option>
</select>

使用以下代码,您可以检查选择的选项数量。

$('#data1').children().length

如果长度为1,则添加禁用并选择:

if($('#data1').children().length == 1) {
     $('#data1').attr('disabled', 'disabled');
     $('#data1').children()[0].attr('selected', 'selected');
}

希望这有帮助。