我想检查我的html选择中的3个选项中的2个细节是否在加载时被检查。
实际上,我的HTML:
<select name="country" id="country" tabindex="7" style="width:128px; margin-right:26px;">
<option selected="selected" name="0">Choisir...</option>
<option value="Canada" <?php if($pays == 'Canada'){echo "selected=selected";} ?>>Canada</option>
<option value="États-Unis" <?php if($state == 'États-Unis'){echo "selected=selected";} ?>>États-Unis</option>
</select>
我的jQuery如下:
if($('#reference').attr('selected',true))
{
$('.showDetaillant').show();
}
正如您所看到的那样,只检查某些内容是“已选中”。默认情况下,这是“Choisir ...”选项。
想要我正在寻找,如果选择“Choisir ...”选项,则设置.hide()。
THX
答案 0 :(得分:2)
您可以使用selectedIndex
属性,如果要在页面加载时检查所选选项,可以在DOMReady上触发change
事件。
$('#country').change(function(){
if (this.selectedIndex === 0) {
$('.showDetaillant').show();
}
}).change();
PS:请注意,您使用attr
作为 setter ,它返回一个始终被评估为 true
的jQuery对象。
答案 1 :(得分:1)
<select name="country" id="country" tabindex="7" style="width:128px; margin-
right:26px;">
<option selected="selected" value="0">Choisir...</option>
</select>
<script>
$(document).ready(function () {
if($('#country').val()=="0")
$('.showDetaillant').show();
});
<script>
答案 2 :(得分:0)
您可以尝试以下操作,它会为您提供所选选项的索引
$("select#elem").get(0).selectedIndex > 0
阅读此How to check if selected index of dropdownlist is not 0 or -1 using jquery