首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在一组div (如单选按钮)之间选择一个div?

如何在一组div (如单选按钮)之间选择一个div?
EN

Stack Overflow用户
提问于 2015-08-13 06:24:28
回答 4查看 287关注 0票数 9

我有一组divs:

代码语言:javascript
复制
        <div class="row">
            <div class="col-xs-12 well bb paylater" value="paylater" onclick="selectPayment(this)">payment1</div>
            <div class="col-xs-12 well bb alipay" value="alipay" onclick="selectPayment(this)">payment2</div>
            <div class="col-xs-12 well bb wechatpay" value="wechatpay" onclick="selectPayment(this)">payment3</div>
        </div>

我的JS:

代码语言:javascript
复制
function appendCheckMark(type) {
            $(type).append('<span class="label label-info payment_select"><i class="glyphicon glyphicon-ok"></i></span>');
        }


        function selectPayment(type) {
            var val = $(type).attr('value');
            if ( val == 'paylater') {
                appendCheckMark(type);

            }
            else if (val == 'alipay') {
                appendCheckMark(type);

            }
            else if (val == 'wechatpay'){
                appendCheckMark(type);

            }
        }

我的问题是,我如何使这三个div像一个单选按钮?所以用户只能选择其中之一?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-08-13 06:27:32

只需先删除现有的payment_select跨度,然后再追加一个新的。

代码语言:javascript
复制
function selectPayment(type) {
   //remove existing check here
   $(type).parent().find('.payment_select').remove();
   var val = $(type).attr('value');
   if ( val == 'paylater') {
        appendCheckMark(type);

   }
   else if (val == 'alipay') {
       appendCheckMark(type);

    }
    else if (val == 'wechatpay'){
       appendCheckMark(type);

    }
}
票数 3
EN

Stack Overflow用户

发布于 2015-08-13 06:30:46

尝试这一个,只需删除附加的div,同时单击任何div。

代码语言:javascript
复制
function appendCheckMark(type) {
    $(type).append('<span class="label label-info payment_select"><i class="glyphicon glyphicon-ok"></i></span>');
  }


  function selectPayment(type) {

            $('.payment_select').remove();
            var val = $(type).attr('value');
            if ( val == 'paylater') {
                appendCheckMark(type);
            }
            else if (val == 'alipay') {
                appendCheckMark(type);
            }
            else if (val == 'wechatpay'){
                appendCheckMark(type);
            }
        }
票数 0
EN

Stack Overflow用户

发布于 2015-08-13 06:31:33

单击div时,可以将类添加到div中,并使用css处理div的外观。

代码语言:javascript
复制
function selectPayment(type) {
        var val = $(type).attr('value');
        $(type).addClass('selected').siblings().removeClass('selected')
        if ( val == 'paylater') {
            appendCheckMark(type);

        }
        else if (val == 'alipay') {
            appendCheckMark(type);

        }
        else if (val == 'wechatpay'){
            appendCheckMark(type);

        }

在那里,您已经选择了类所选的div,而其他人则没有这个类。使用css来改变美学。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31980898

复制
相关文章

相似问题

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