单击和如果div之后的功能更改其用户操作的内容

时间:2014-10-29 17:07:12

标签: javascript jquery

我有这个标记:

<button id="drop_group_2" data-toggle="dropdown" href="#">
 <span>Select size</span></button>
<button type="submit" name="Submit" class="exclusive">
 <span>Add to cart</span>
</button>

问题是我想阻止用户提交,如果没有选择它的大小,所以我这样做了:

$('button.exclusive').on('click', function(){
        if ($('#drop_group_2:has(span)')) {
            alert('You must select size');
            return false;
        }
});

效果很好,但在用户选择尺寸后drop_group_2删除范围并获取数字大小:

<button id="drop_group_2" data-toggle="dropdown" href="#">42</button>

但是如果用户再次点击submit再次出现警报,它就永远不会消失。如果用户选择了尺寸(span被删除)然后让用户提交,我该怎么办呢?

1 个答案:

答案 0 :(得分:1)

您应该检查一长串匹配的元素,如下所示:

$('button.exclusive').on('click', function(){
        if ($('#drop_group_2:has(span)').length) {
            alert('You must select size');
            return false;
        }
});

否则它将始终返回true。