关于input获得焦点显示下面的select问题

<input  type="text" class="form-control" onfocus="inputFocus(this);" onblur="matterChange(this);">
<select    multiple  class="form-control">
    <option value="">BAX</option>
    <option value="">sfv</option>
    <option value="">AA</option>
</select>
function inputFocus(obj){/*input获得焦点事件*/
    $(obj).next().show();
}
function matterChange(obj){/*input失去焦点事件*/
    var selectVal=$(obj).next().children("option:selected").text();
    $(obj).val(selectVal);
    var inputVal=$(obj).val();
    if(inputVal != null && inputVal.length > 0 && inputVal == selectVal){
        $(obj).next().hide();
    }else{/* 没有选中值 */
        $(obj).val("");
        $(obj).next().hide();
    }
}
想要实现的效果是:input获得焦点时,select显示,当选择了option时,将选择option的值传到input,并且隐藏input。但是在没有选中option时可以点击input和select以外的地方使select消失
现在基本能实现这种效果。只是在火狐可以。在谷歌,360,IE上第一次点击获取不到option的值,第二次就可以。有没有什么方法解决这种问题或者换个方法,求大神指导!!!


nobcainiao
浏览 3569回答 0
0回答
打开App,查看更多内容
随时随地看视频慕课网APP