angular.js - angularjs 如何用一组按钮完成单选
问题描述
辛苦各位了,请问如何用一组按钮来做单选的问题,万分感谢!
如图,需要做到2点:1、页面加载后,根据传回的值 domain:'8' ,设置默认勾选的按钮和按钮里的图标class;2、点击一个按钮,清除其他按钮样式,并给点击的按钮添加 class active
效果图如下(现在是直接用添加class形成的)
{ 1: '健康', 2: '法律', 3: '心理', 4: '医美', 5: '教育', 6: '职场', 7: '汽修', 8: '其他'}HTML结构如下(当前是我写的,但只能多选)
<ul class='tag-list button-select-group'> <li ng-repeat='item in domainList'> <button type='button' ng- ng-click='checkDomain($index+1)' ng-model='domain' value='{{$index+1}}'>{{item}}<span ng-class='{’fa fa-check-square’:$index + 1 == defaultDomain}'></span> </button></li></ul>JS如下
$scope.defaultDomain = data.domain;//服务器返回的domain字段数据$scope.checkDomain = function (id) {$scope.defaultDomain=id; }
问题解答
回答1:定义一个变量赋当前value给他,然后在class做判断,如果值=index就加上样式
回答2:直接用radio形式来做,默认样式隐藏就好了,然后对对应的label在样式上做文章
相关文章:
1. nignx - docker内nginx 80端口被占用2. docker - 各位电脑上有多少个容器啊?容器一多,自己都搞混了,咋办呢?3. docker网络端口映射,没有方便点的操作方法么?4. java - 为什么此私有静态变量能被访问呢?5. docker容器呢SSH为什么连不通呢?6. docker绑定了nginx端口 外部访问不到7. angular.js - angular内容过长展开收起效果8. macos - mac下docker如何设置代理9. php - 第三方支付平台在很短时间内多次异步通知,订单多次确认收款10. docker images显示的镜像过多,狗眼被亮瞎了,怎么办?
