Javascript下拉列表的案例选择

Javascript下拉列表的案例选择,javascript,switch-statement,getelementbyid,Javascript,Switch Statement,Getelementbyid,这是我第一次尝试Javascript。我实际上是在尝试根据下拉框中选择的值生成唯一的DIV。我让它显示DIV,但值不会根据所选内容而改变。以下是到目前为止我得到的信息: 正如你所看到的,当200000美元的范围被选择时,我想产生我已经计算过的固定值。我很好奇是否有一个switch或case-select语句,我可以根据下拉列表中选择的实际选项以某种方式生成来更改DIV。任何指向正确方向的指示都将不胜感激 以下是如何使用jQuery实现这一点: <select id="mySelect"

这是我第一次尝试Javascript。我实际上是在尝试根据下拉框中选择的值生成唯一的DIV。我让它显示DIV,但值不会根据所选内容而改变。以下是到目前为止我得到的信息:


正如你所看到的,当200000美元的范围被选择时,我想产生我已经计算过的固定值。我很好奇是否有一个switch或case-select语句,我可以根据下拉列表中选择的实际选项以某种方式生成来更改DIV。任何指向正确方向的指示都将不胜感激

以下是如何使用jQuery实现这一点:

<select id="mySelect" onchange="showhide(this)">
    <option value="">Desired Home Price:</option>
    <!-- the option values are suffixes for the elements to show -->
    <option value="0">$200,000</option>
    <option value="1">$175,000</option>
    <option value="2">$150,000</option>
    <option value="3">$125,000</option>
    <option value="4">$100,000</option>
    <option value="5">$75,000</option>
    <option value="6">$50,000</option>
</select>

<div class="answer0 answers" style="width:200px;height:200px;display:none">
<div id="value1">Principal and Interest only: $898</div> 
<div id="value2">Estimated total monthly payment: $1,098</div>
<div id="value3">VA loan payment:</div>
<div id="value4">Another field:</div>
</div>

<div class="answer1 answers" style="width:200px;height:200px;display:none">
<div id="value1a">Principal and Interest only: $898.00</div> 
<div id="value2a">Estimated total monthly payment: $1,098.00</div>
<div id="value3a">VA loan payment:</div>
<div id="value4a">Another field:</div>
</div>



<script type="text/javascript">

function showhide(id) {
    var mySel = $(id).val()
    $('.answers').hide()  
    $('.answer'+mySel).show()  
}

</script>

理想房价:
$200,000
$175,000
$150,000
$125,000
$100,000
$75,000
$50,000
仅本金和利息:898美元
估计每月付款总额:1 098美元
VA贷款支付:
另一个领域:
仅本金和利息:898.00美元
估计每月付款总额:1098.00美元
VA贷款支付:
另一个领域:
函数showhide(id){
var mySel=$(id).val()
$('.answers').hide()
$('.answer'+mySel.show()
}

以下是如何使用jQuery实现这一点:

<select id="mySelect" onchange="showhide(this)">
    <option value="">Desired Home Price:</option>
    <!-- the option values are suffixes for the elements to show -->
    <option value="0">$200,000</option>
    <option value="1">$175,000</option>
    <option value="2">$150,000</option>
    <option value="3">$125,000</option>
    <option value="4">$100,000</option>
    <option value="5">$75,000</option>
    <option value="6">$50,000</option>
</select>

<div class="answer0 answers" style="width:200px;height:200px;display:none">
<div id="value1">Principal and Interest only: $898</div> 
<div id="value2">Estimated total monthly payment: $1,098</div>
<div id="value3">VA loan payment:</div>
<div id="value4">Another field:</div>
</div>

<div class="answer1 answers" style="width:200px;height:200px;display:none">
<div id="value1a">Principal and Interest only: $898.00</div> 
<div id="value2a">Estimated total monthly payment: $1,098.00</div>
<div id="value3a">VA loan payment:</div>
<div id="value4a">Another field:</div>
</div>



<script type="text/javascript">

function showhide(id) {
    var mySel = $(id).val()
    $('.answers').hide()  
    $('.answer'+mySel).show()  
}

</script>

理想房价:
$200,000
$175,000
$150,000
$125,000
$100,000
$75,000
$50,000
仅本金和利息:898美元
估计每月付款总额:1 098美元
VA贷款支付:
另一个领域:
仅本金和利息:898.00美元
估计每月付款总额:1098.00美元
VA贷款支付:
另一个领域:
函数showhide(id){
var mySel=$(id).val()
$('.answers').hide()
$('.answer'+mySel.show()
}

如果不想使用jQuery,可以尝试切换选择并设置value1、value2、value3的innerHTML

    switch(document.getElementById('mySelect').value)
{
    case '0': 
        document.getElementById('value1').innerHTML ='Principal and Interest only: $898';
        document.getElementById('value2').innerHTML = 'Estimated total monthly payment: $1,098';
        document.getElementById('value3').innerHTML ='VA loan payment:';    
        break;   
    case '1': 
        document.getElementById('value1').innerHTML ='Principal and Interest only: $998';
        document.getElementById('value2').innerHTML = 'Estimated total monthly payment: $2,098';
        document.getElementById('value3').innerHTML ='VA loan payment: $25';    
        break;          
    etc...
}

如果不想使用jQuery,可以尝试切换选择并设置value1、value2、value3的innerHTML

    switch(document.getElementById('mySelect').value)
{
    case '0': 
        document.getElementById('value1').innerHTML ='Principal and Interest only: $898';
        document.getElementById('value2').innerHTML = 'Estimated total monthly payment: $1,098';
        document.getElementById('value3').innerHTML ='VA loan payment:';    
        break;   
    case '1': 
        document.getElementById('value1').innerHTML ='Principal and Interest only: $998';
        document.getElementById('value2').innerHTML = 'Estimated total monthly payment: $2,098';
        document.getElementById('value3').innerHTML ='VA loan payment: $25';    
        break;          
    etc...
}

您应该考虑使用jQuery。你也可以通过使用类名而不是单独的ID在几行代码中这样做。我不知道如何使用jQuery你应该考虑使用jQuery。通过使用类名而不是单个ID,您也可以在几行代码中实现这一点!这在jsfiddle中无疑是非常好的。还有一个快速的问题,如何为页面调用jQuery?您需要将其包含在您的脑海中:在JSFIDLE中,您可以选择左侧菜单上的jQuery。是的,我肯定在JSFIDLE的侧页上看到了jQuery的下拉列表。我只是不确定如何通过HTML页面调用它。感谢所有的帮助/支持,所以当涉及到从jfiddle到dreamweaver实现这段代码时,它根本不会加载。有人有什么想法吗?非常感谢你!这在jsfiddle中无疑是非常好的。还有一个快速的问题,如何为页面调用jQuery?您需要将其包含在您的脑海中:在JSFIDLE中,您可以选择左侧菜单上的jQuery。是的,我肯定在JSFIDLE的侧页上看到了jQuery的下拉列表。我只是不确定如何通过HTML页面调用它。感谢所有的帮助/支持,所以当涉及到从jfiddle到dreamweaver实现这段代码时,它根本不会加载。有人有什么想法吗?美好的这正是我要找的斯图尔特。我知道有一种方法可以让它切换,但我没有意识到必须用这个切换来封装整个getelementbyid。谢谢你的时间和耐心。很好。这正是我要找的斯图尔特。我知道有一种方法可以让它切换,但我没有意识到必须用这个切换来封装整个getelementbyid。我感谢你的时间和耐心。