Onchange无法使用2个选项

时间:2016-03-15 02:47:25

标签: javascript php jquery codeigniter

我的onchange存在问题。 我的JS:

<script>
    function brands()
{
   var brand = $('#brand').val(); 
   var area = $('#area').val(); 
    $.post('<?php echo base_url();?>index.php/arealeader/lists/' + area + '/' + brand,
  {

    brand:brand
    area:area

    },
    function(data) 
    {

    $('#listoutlet').html(data);
    }); 

}
</script>

这是我的html&amp; php代码

<div class="form-group">
                            <label class="col-sm-3 control-label">Area Outlet</label>
                            <div class="col-sm-5">
                            <select class="form-control select2" id="area" name="area">
                            <option value="none">None</option>
                            <? foreach($area as $tb1){?>
                              <option value="<?=$tb1->areacode?>"><?=$tb1->Description?></option>
                            <? } ?>
                            </select>
                            </div>
                            </div>

                            <div class="form-group">
                            <label class="col-sm-3 control-label">Brand</label>
                            <div class="col-sm-5">
                            <select class="form-control" id="brand" onchange="brands()" name="brand">
                            <option value="none">None</option>
                            <? foreach($brand as $brands){?>
                              <option value="<?=$brands->BrandCode?>"><?=$brands->BrandDescription?></option>
                            <? } ?>
                            </select>
                            </div>
                            </div>

我想要的:

  1. 用户选择品牌
  2. 用户选择区域
  3. 结果将显示取决于两个选项
  4. 我从控制台收到此错误 Uncaught ReferenceError: brands is not defined

    如果我这样做,我的工作正常

    <script>
            function brands()
        {
           var area = $('#area').val(); 
            $.post('<?php echo base_url();?>index.php/arealeader/lists/' + area,
          {
    
            area:area
    
            },
            function(data) 
            {
    
            $('#listoutlet').html(data);
            }); 
    
        }
        </script>
    

    ---我通过浏览器控制台检查

    enter image description here

    我解决了我的问题。我只是这样做

        I delete this -> brand:brand
        area:area
    

1 个答案:

答案 0 :(得分:2)

你在这里错过了一个逗号:

brand:brand,
area:area

多个值需要用逗号分隔,这就是它与area:area一起使用的原因。