我的页面中是一个下拉菜单,有三个选项,代码如下:<select name="BoxNum" id="BoxNum">
    <option value="2" >2</option>
    <option value="5" >5</option>
    <option value="10">10</option>
</select>
下面是Jquery代码$(document).ready(function(){
    var BoxNum = $(#BoxNum option:selected').val();
});当我进入HTML页面,并且下拉菜单选择5或者10后,BoxNum还是赋值为2,哪位高手帮我看一下啊~

解决方案 »

  1.   

    $(document).ready(function(){
        $("#BoxNum").change(function(){
            var BoxNum = $(#BoxNum option:selected').val();
            alert(BoxNum);
        });
    });
      

  2.   

    $(document).ready(function(){
      $("#BoxNum").change(function(){
      var BoxNum = $('#BoxNum option:selected').val();
      alert(BoxNum);
      });
    });
      

  3.   

    楼上邓肯谢谢你。是这样个情况,我有一个文本框,一个下拉菜单。我想在文本框change时读出下拉框的数值,并计算,以下我再付一段源码:$(document).ready(function(){

    //记录2、5、10盒价格
    var c_price2 = parseInt($('#c_price2').html()); 
    var c_price5 = parseInt($('#c_price5').html());
    var c_price10 = parseInt($('#c_price10').html());

    //当人数改变后重新计算价格
    $('.PrintNum #PersonNum').change(function(){
    var person = parseInt($(this).val());
    var boxnum = parseInt($('.PrintNum #BoxNum option:selected').val());
    if ( boxnum=2 )
    var totalPrice=c_price2*person*boxnum;
    else if ( boxnum=5 )
    var totalPrice=c_price5*person*boxnum;
    else if ( boxnum=10)
    var totalPrice=c_price10*person*boxnum;
    $('#TotalPrice').html(boxnum);

    });

    });
    <form>
       <div class="PrintNum">
           <input name="PersonNum" type="text" id="PersonNum" value="1" size="3" maxlength="3" /> 个人,每人
            <select name="BoxNum" id="BoxNum">
    <option value="2" >2</option>
    <option value="5" >5</option>
    <option value="10">10</option>
    </select>盒;
        </div>
    </form>
      

  4.   

    $('.PrintNum #BoxNum').val()试试看
      

  5.   

    这样试了,也不行。不知道怎么搞的,我在HTML页面中点击下拉菜单选择5,10,显示出来的都是2
      

  6.   

    已经解决了,if ( boxnum=2 ) 应该写成  boxnum==2,这个地方错了,谢谢邓肯~