我有一个div重复多次,包含一个具有一个值 Advanced 的选择框。当我在特定div的下拉列表中选择该值时,我想显示与该div对应的输入框。
<div >
<select name="skilltest">
<option value="advanced">Avanced</option>
</select>
<input type="text" class="disableskill"/>
</div>
我编写了一个jquery脚本来显示输入框,如下所示:
$("select.skilltest").change(function()
{
var skillvalue=$(this).val();
if(skillvalue == "Advanced" || skillvalue == "advanced")
{
$(".disableskill").show();
}
else{
$(".disableskill").hide();
}
});
如何实现这一目标?
答案 0 :(得分:0)
您可以使用next()函数从$(this)中选择下一个元素:
int a[2][2][2];
int c[2 * 2 * 3];
unsigned int index = 0;
for (unsigned int i = 0; i < 2; ++i)
{
for (unsigned int j = 0; j < 2; ++j)
{
for (unsigned int k = 0; k < 3; ++k)
{
c[index++] = a[i][j][k];
}
}
}
$("select[name=skilltest]").change(function(){
var skillvalue=$(this).val();
if(skillvalue == "Advanced" || skillvalue == "advanced"){
$(this).next(".disableskill").show();
} else{
$(this).next(".disableskill").hide();
}
});
答案 1 :(得分:0)
你可以试试这个。使用next()方法,您可以隐藏或显示下一个输入。
$(".skilltest").change(function()
{
var skillvalue = $(this).val();
if(skillvalue == "Advanced" || skillvalue == "advanced")
{
$(this).next(".disableskill").show();
}
else{
$(this).next(".disableskill").hide();
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
<select class="skilltest">
<option value="0"></option>
<option value="advanced">Avanced</option>
</select>
<input type="text" class="disableskill" style="display:none"/>
</div>
<div>
<select class="skilltest">
<option value="0"></option>
<option value="advanced">Avanced</option>
</select>
<input type="text" class="disableskill" style="display:none"/>
</div>
答案 2 :(得分:0)
您可以在IF块
中尝试使用以下脚本而无需额外条件$(".skilltest").change(function()
{
var skillvalue = $(this).val().toLowerCase();
if(skillvalue == "advanced")
{
$(".disableskill").show();
}
else{
$(".disableskill").hide();
}
});