![](/img/trans.png)
[英]How do I select a specific option value from a drop down list to show a hidden div?
[英]How do I show a div when a drop down is set to "No"?
我正在處理一個默認隱藏地址字段的表單。 如果有人之前沒有訂購過,他們會將下拉菜單從 Yes 更改為 No,並且地址字段應該會顯示出來。
下拉代碼如下:
<label for="have_ordered_before"><span>*Have you ordered from us before?</span>
<select name="have_ordered_before" id="have_ordered_before">
<option value="Yes">Yes</option>
<option value="No">No</option>
</select>
</label>
地址 div 如下:
<div id="address-info" style="display:none">
form details go here...
</div>
我嘗試使用的腳本是:
<script type="text/javascript">
function check_dd() {
if(document.getElementById('have_ordered_before').value == "Yes") {
document.getElementById('address-info').style.display = 'none';
} else {
document.getElementById('address-info').style.display = 'block';
}
}
</script>
我對這里的解決方案持開放態度,並希望得到任何幫助。 謝謝。
您需要將事件更改(在本例中為change ,click/keypress 是其他示例)綁定到要檢查的函數:
document.getElementById('have_ordered_before').onchange = check_dd;
如果你想要 jQuery*:
$('#have_ordered_before').on('change',check_dd);
或者,如果您想要整個 jQuery*:
$('#have_ordered_before').on('change',function(){
$('#address-info').css({display: $(this).val()=='Yes' ? 'none' : 'block' });
});
*兩者都需要准備好文件
這就是你可以在 jQuery 中做的事情
$(function(){
$('#have_ordered_before').change(function(){
var val = $(this).val();
if(val == 'Yes')
$('#address-info').hide();
else
$('#address-info').show();
});
});
通過 jQuery:使用 .change()
$('#selectId').change(function(){
if($('#selectId option:selected').val() == "No"){
$('#divId').show();
} else {
$('#divId').hide();
};
})
你錯過了對函數的調用:onchange="check_dd()"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.