首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何检查是否有两个选择框被选中,并且一个值大于另一个值?

如何检查是否有两个选择框被选中,并且一个值大于另一个值?
EN

Stack Overflow用户
提问于 2016-08-08 15:33:58
回答 2查看 27关注 0票数 0

尝试检查某个复选框值是否大于其他复选框值。如果是,则启用“添加”按钮,如果不是,则将其禁用。

由于某些原因,它的行为非常奇怪:当我尝试使用小数字(从0到8)时,它工作得很好,但对于更大的数字,它只是禁用了按钮,即使值比其他值大。

我的猜测是我的选择器在选择两个选择框时都是错误的。如何检查是否有两个选择框被选中,并且一个值大于另一个值?

代码:

代码语言:javascript
运行
复制
$('.ageSelect').on('change', function() {

    var ageToVal = $("#ageTo").val();
    var ageFromVal = $("#ageFrom").val();
    console.log("from value is "+ageFromVal);

    console.log("to value is "+ageToVal);

    if(ageToVal <= ageFromVal){
        console.log("SMALLLER");
        $("#addChildAge").prop("disabled", true);

    }else{
        console.log("BIGGGER");
        $("#addChildAge").prop("disabled", false);
    }
});


<div class="row">
    <div class="col-md-6">
        <div class="form-group">
            <select class="selectpicker ageSelect" data-live-search="true" id="ageFrom" name="ageFrom" data-bv-excluded="false">
                <optgroup class="userProfileAgeFrom">
                    <option disabled selected value="defaultAge">
                        Age from...
                    </option>
                </optgroup>
            </select>
        </div>
        <div class="form-group">
            <select class="selectpicker ageSelect" data-live-search="true" id="ageTo" name="ageTo" data-bv-excluded="false">
                <optgroup class="userProfileAgeTo">
                    <option disabled selected value="defaultAge">
                        Age to...
                    </option>
                </optgroup>
            </select>
        </div>
    </div>
    <div class="col-md-2">
        <button type="button" id="addChildAge" name="addChildAge" class="btn btn-green">
            <i class="fa fa-plus" aria-hidden="true"></i> Lisa
        </button>
    </div>
</div>

小提琴在这里https://jsfiddle.net/uv6133xm/

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-08-08 15:35:41

转换为数字

代码语言:javascript
运行
复制
 var ageToVal = Number($("#ageTo").val());
 var ageFromVal = Number($("#ageFrom").val());
票数 1
EN

Stack Overflow用户

发布于 2016-08-08 15:36:40

在进行比较之前,您需要对这些值进行解析:

代码语言:javascript
运行
复制
 if(parseInt(ageToVal,10) <= parseInt(ageFromVal,10)){
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38823587

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档