我正在尝试查看select-menu中的特殊选项是否具有等于1的值,然后隐藏另一个对象。我已经尝试了一整天,但还是想不通(可能是因为我完全是jquery的初学者)
我有一个从数据库填充的select菜单。如果id="1“的选项有"selected=selected”,那么我希望在页面加载时隐藏另一个div。
这就是我到目前为止得到的:
<select>
<option id="3">test1</option>
<option id="1" selected="selected">test2</option>
<option id="2">test3</option>
</select>
<div id="hide">Hide me</div>
$("#1 option:selected").ready(function () {
$("#hide").hide();
});任何帮助都将不胜感激。谢谢../Andreas
发布于 2009-10-20 12:43:35
恐怕你的代码有几处地方不对劲:
.ready()应该应用于文档.val()来获取值<.ready()>H111您应该为选择提供一个id,以防您将另一个id添加到页面。H212
把所有这些放在一起:
<select id="foo">
<option value="3">test1</option>
<option value="1" selected="selected">test2</option>
<option value="2">test3</option>
</select>
<div id="hide">Hide me</div>
$(document).ready(function () {
if ($('#foo').val() != 1)
$("#hide").hide();
});如果您希望在更改select时动态执行此操作,可以这样做:
$('#foo').change(function () {
if ($(this).val() != 1)
$("#hide").hide();
else
$("#hide").show();
});发布于 2009-10-20 12:43:32
// assume your select has id="mySelect"
$(function() {
$('#mySelect').change(function() {
var value = $(this).val();
if (value == '1') {
$('#hide').hide();
} else {
$('#hide').show();
}
return false;
});
});发布于 2009-10-20 12:44:52
$(function() {
$('select').change(function(){
if ($("option:selected",this).attr('id') == 1 ){
$("#hide").hide();
}
});
});将使用你已有的东西,但也适用于其他人提出的观点-
属性而不是id
<select>的change事件时执行https://stackoverflow.com/questions/1594316
复制相似问题