使用jquery在下拉列表中选择没有值的选项

时间:2013-11-21 18:06:23

标签: jquery

我正在尝试使用jQuery更改下拉列表中选择的选项。到目前为止,这里没有任何工作是我现在的代码。

function clear_plus_group(){
$('#plus_group_id').html('');
$('#plus_group_href').html('');
$('#plus_group_remove').html('');
$('#securityGroup[1]').first().attr('selected');

以下是我正在使用的选择。

<td>
<select size="1" name="securityGroup[1]" id="securityGroup[1]"
onchange="get_plus_group(this.value);">
<option></option>
<option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>            
</select>

我们不会向第一个选项添加值,因为我们将信息发送到数据库时将其视为null。所以我试图选择第一个没有值的。到目前为止,没有任何工作。

3 个答案:

答案 0 :(得分:1)

怎么样

$('#securityGroup\\[1\\] option:eq(0)').prop("selected", true);

演示:http://jsfiddle.net/H5UBd/

答案 1 :(得分:0)

试试这个,

$('#securityGroup[1] option:empty').prop("selected", true);

阅读this以供参考。基本上:empty选择器会选择空的元素,技术上,其中没有子/文本节点的元素。

编辑:

我刚刚意识到HTML中select元素的ID有两个元字符。所以我们需要逃避它,以使选择器工作。

$('#securityGroup\\[1\\] option:empty').prop("selected", true);

答案 2 :(得分:0)

您的对象的名称和ID都有方括号。您必须转义这些,以便jQuery为您正在寻找的内容获取正确的字符串名称。这将做你想要的:

 $('#securityGroup\\[1\\] option:empty').prop('selected','selected');

我还制作了一个JSFiddle示例,显示了这里的工作:http://jsfiddle.net/QWMnL/

单击按钮(运行代码后),它将在选择下拉列表中选择空项。空项是下拉列表中的第二项,因此我们知道它不仅仅是选择下拉列表中的第一项(其值为0且不为空)。