关于select下拉框显示内容改变

图片说明

            如图,默认两个下拉框都是显示请选择,想要的效果是我两个都选择之后,当我更换上面的公司,下面的批次号显示出来的自动变成请选择,剩下的里面可选择项已经通过ajax改变了,这个没问题。试了好几种方法都行不通。代码如下:
     $("select[name='companyId']").click(function(){
                var str = $(this).val();
                $("select[name='batchId']").empty();
                $.ajax({
                    type:"post",
                    url:"${ctx}/operating/process/operatingProcessMachining/getBatchIdByCompanyId",
                    data:{companyId:str},
                    dataType:"json",
                    success:function(obj){
                        for(var i=0;i<obj.length;i++){
                            $("select[name='batchId']").append("<option value="+obj[i]+" name="+obj[i]+">"+obj[i]+"</option>");
                        }
                    }
                });
            });
        });
 <div class="control-group">
            <label class="control-label">进场批次号:</label>
            <div class="controls">
                <form:select path="batchId" class="input-xxlarge required" style="width:285px">
                    <form:option  value="" label="请选择" selected="selected"/>
                </form:select>
                <span class="help-inline"><font color="red">*</font> </span>
            </div>
        </div>
 for(var i=0;i<obj.length;i++){
                            $("select[name='batchId']").append("<option value="+obj[i]+" name="+obj[i]+">"+obj[i]+"</option>");
}
这里只有添加下拉的逻辑,没有设置选择的逻辑,下面加上
$("select[name='batchId']").value="你要选择的那条的value";

把$("select[name='batchId']").empty(); 换成$("select[name='batchId']").val("请选择"); 正确逻辑应该是刚进页面的时候只允许选择公司,不允许选择批次,当公司选择了后,批次就可以选择。当然你不这么用也行。
我说的方法就是每次点击选择公司的时候就把批次赋值请选择。

增加一个option为“请选择”默认选中应该可以吧

试试这样:

第一段代码

$("select[name='companyId']").change(function(){
        var str = $(this).val();
        $("select[name='batchId']").empty();
        $("select[name='batchId']").append("<option value=''>请选择</option>"); //为Select插入一个Option(第一个位置)
        $.ajax({
            type:"post",
            url:"${ctx}/operating/process/operatingProcessMachining/getBatchIdByCompanyId",
            data:{companyId:str},
            dataType:"json",
            success:function(obj){
                for(var i=0;i<obj.length;i++){
                    $("select[name='batchId']").append("<option value="+obj[i]+" name="+obj[i]+">"+obj[i]+"</option>");
                }
                $("select[name='batchId']").get(0).selectedIndex = 0;   //选择了Option第一项
            }
        });
    });

把你列出的第二段代码的option去掉。