全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

AngularJS 单选框及多选框的双向动态绑定

AngularJS 在 <input type="text" /> 中实现双向动态绑定十分简单,如下所示:

<input type="text" ng-model="topic.title" />

只需要用ng-model 与 $scope 中的属性对应,即实现了type=”text” 的双向动态绑定。当 <input type="radio" /> 及 <input type="checkbox" /> 时情况略有不同:

1. <inputtype="radio" />

<input type="radio" name="person-action" value="go_home" ng-model="person.action" />回家 
<input type="radio" name="person-action" value="go_to_school" ng-model="person.action" />回学校 

通过 value 属性指定选中状态下对应的值,并通过 ng-model 将单选框与 $scope 中的属性对应,便实现了 type=”radio” 时的双向动态绑定。

2. <input type="checkbox" />

<input type="checkbox" ng-true-value="true" ng-false-value="false" ng-model="phone.play_sound" />铃声 
<input type="checkbox" ng-true-value="true" ng-false-value="false" ng-model="phone.play_vibrate" />震动 
<input type="checkbox" ng-true-value="true" ng-false-value="false" ng-model="phone.play_lights" />呼吸灯 

通过AngularJS 的内置指令 ng-true-value 和 ng-false-value ,指定多选框在选中和未选中状态下对应的值,再通过ng-model 将其与 $scope 中的属性对应,便实现了type=”checkbox” 的双向动态绑定。

但是理想跟现实总是相差太多,在实际操作过程中还是出现了问题。应该是ng-repeat中scope作用域的问题。

经过一番搜索、调试,自己终于将此问题解决了,效果图如下:

核心源码

js

var str = ""; // 原来存放选中的项 
$scope.Selected = false; //默认未选中 
var choseArr=[]; // 定义数组用于存放前端显示 
$scope.check = function(z,x){ 
console.log("HUY:"); 
console.log(z); 
console.log("HUYU:"); 
console.log(x); 
if (x == false) { // 选中 
   str = str + z + ','; 
  } else { 
   str = str.replace(z + ',', ''); // 取消选中 
  } 
  choseArr = (str.substr(0,str.length-1)).split(','); 
 console.log("HY:"); 
 console.log(choseArr); 
 $scope.number_request = choseArr.length; // 前端显示所选数量 
 $scope.content_request = choseArr; // 前端显示所选请求ID 
}; 

Html

<tr ng-repeat="item in querydata"> 
<td ng-bind="$index+1">1</td> 
 <td><a ui-sref="#">{{item.postid}}</a></td> 
  <td>{{item.medname}}</td> 
  <td>{{item.medfact}}</td> 
  <td>{{item.medcnt}}</td>  
  <td>{{item.remark}}</td>   
  <td>{{item.tel}}</td>   
  <td>{{item.post_time}}</td> 
  <td><input id={{item.postid}} type="checkbox" ng-model="Selected" ng-click="check(item.postid,Selected)" /></td>   
</tr> 

参考文献:

https://www./article/68155.htm

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!


# angularjs  # 双向绑定  # 单选框取值  # angularjs单选框  # 多选框  # AngularJS单选框及多选框实现双向动态绑定  # AngularJS 实现购物车全选反选功能  # AngularJS 购物车全选/取消全选功能的实现方法  # Angularjs+bootstrap+table多选(全选)支持单击行选中实现编辑、删除功能  # AngularJS实现全选反选功能  # angularjs实现多选框分段全选效果实现  # 绑定  # 实现了  # 所选  # 太多  # 状态下  # 只需  # 将其  # 要用  # 所示  # 将此  # 多选  # 过程中  # 出现了  # 应该是  # 解决了  # 在实际  # 单选框  # play_vibrate  # ng  # play_lights 


相关文章: 如何配置支付宝与微信支付功能?  如何在IIS中配置站点IP、端口及主机头?  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?  实例解析Array和String方法  建站之星后台管理系统如何操作?  如何正确下载安装西数主机建站助手?  零服务器AI建站解决方案:快速部署与云端平台低成本实践  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  如何选择可靠的免备案建站服务器?  如何处理“XML格式不正确”错误 常见XML well-formed问题解决方法  专业商城网站制作公司有哪些,pi商城官网是哪个?  官网网站制作腾讯审核要多久,联想路由器newifi官网  香港服务器网站推广:SEO优化与外贸独立站搭建策略  c# 在高并发场景下,委托和接口调用的性能对比  网站制作中优化长尾关键字挖掘的技巧,建一个视频网站需要多少钱?  常州企业网站制作公司,全国继续教育网怎么登录?  如何通过虚拟主机快速搭建个人网站?  如何在Windows环境下新建FTP站点并设置权限?  如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?  如何制作网站标识牌,动态网站如何制作(教程)?  高防网站服务器:DDoS防御与BGP线路的AI智能防护方案  如何快速生成专业多端适配建站电话?  如何获取上海专业网站定制建站电话?  网站制作哪家好,cc、.co、.cm哪个域名更适合做网站?  外贸公司网站制作,外贸网站建设一般有哪些步骤?  建站之星好吗?新手能否轻松上手建站?  企业网站制作公司网页,推荐几家专业的天津网站制作公司?  详解jQuery停止动画——stop()方法的使用  广东企业建站网站优化与SEO营销核心策略指南  公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?  网站海报制作教学视频教程,有什么免费的高清可商用图片网站,用于海报设计?  网页制作模板网站推荐,网页设计海报之类的素材哪里好?  javascript中的try catch异常捕获机制用法分析  SQL查询语句优化的实用方法总结  大连网站设计制作招聘信息,大连投诉网站有哪些?  深圳网站制作案例,网页的相关名词有哪些?  php8.4新语法match怎么用_php8.4match表达式替代switch【方法】  如何配置IIS站点权限与局域网访问?  如何快速生成高效建站系统源代码?  建站之星后台管理:高效配置与模板优化提升用户体验  如何使用Golang安装API文档生成工具_快速生成接口文档  制作网站的基本流程,设计网站的软件是什么?  导航网站建站方案与优化指南:一站式高效搭建技巧解析  简单实现Android文件上传  安云自助建站系统如何快速提升SEO排名?  高性能网站服务器部署指南:稳定运行与安全配置优化方案  ,网页ppt怎么弄成自己的ppt?  简易网站制作视频教程,使用记事本编写一个简单的网页html文件?  如何在建站之星网店版论坛获取技术支持?  在线教育网站制作平台,山西立德教育官网? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。