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

发布时间 - 2026-01-11 00:44:34    点击率:

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 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel如何自定义分页视图?(Pagination示例)  如何在香港服务器上快速搭建免备案网站?  Swift中swift中的switch 语句  如何确保西部建站助手FTP传输的安全性?  如何获取PHP WAP自助建站系统源码?  Laravel的辅助函数有哪些_Laravel常用Helpers函数提高开发效率  Laravel如何使用集合(Collections)进行数据处理_Laravel Collection常用方法与技巧  Laravel的.env文件有什么用_Laravel环境变量配置与管理详解  Laravel Seeder填充数据教程_Laravel模型工厂Factory使用  深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?  Laravel Vite是做什么的_Laravel前端资源打包工具Vite配置与使用  小米17系列还有一款新机?主打6.9英寸大直屏和旗舰级影像  Laravel中间件如何使用_Laravel自定义中间件实现权限控制  Laravel Octane如何提升性能_使用Laravel Octane加速你的应用  高端建站如何打造兼具美学与转化的品牌官网?  Python函数文档自动校验_规范解析【教程】  HTML5空格和nbsp有啥关系_nbsp的作用及使用场景【说明】  Laravel如何配置.env文件管理环境变量_Laravel环境变量使用与安全管理  动图在线制作网站有哪些,滑动动图图集怎么做?  bootstrap日历插件datetimepicker使用方法  如何快速搭建自助建站会员专属系统?  微信小程序 HTTPS报错整理常见问题及解决方案  高防网站服务器:DDoS防御与BGP线路的AI智能防护方案  香港服务器WordPress建站指南:SEO优化与高效部署策略  Edge浏览器如何截图和滚动截图_微软Edge网页捕获功能使用教程【技巧】  如何在IIS中配置站点IP、端口及主机头?  Laravel怎么做缓存_Laravel Cache系统提升应用速度的策略与技巧  Laravel如何使用Collections进行数据处理?(实用方法示例)  C++时间戳转换成日期时间的步骤和示例代码  Laravel如何配置中间件Middleware_Laravel自定义中间件拦截请求与权限校验【步骤】  如何为不同团队 ID 动态生成多个“认领值班”按钮  最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?  如何快速建站并高效导出源代码?  如何用AWS免费套餐快速搭建高效网站?  Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】  php静态变量怎么调试_php静态变量作用域调试技巧【解答】  Laravel如何实现一对一模型关联?(Eloquent示例)  Laravel怎么创建自己的包(Package)_Laravel扩展包开发入门到发布  JavaScript模板引擎Template.js使用详解  如何快速选择适合个人网站的云服务器配置?  Laravel任务队列怎么用_Laravel Queues异步处理任务提升应用性能  微信小程序 wx.uploadFile无法上传解决办法  Python进程池调度策略_任务分发说明【指导】  如何快速生成高效建站系统源代码?  如何在云主机快速搭建网站站点?  如何为不同团队 ID 动态生成多个独立按钮  品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?  想要更高端的建设网站,这些原则一定要坚持!  中国移动官方网站首页入口 中国移动官网网页登录  微信小程序 五星评分(包括半颗星评分)实例代码