千家信息网

AngularJS如何实现单选框及多选框的双向动态绑定

发表于:2025-02-23 作者:千家信息网编辑
千家信息网最后更新 2025年02月23日,这篇文章给大家分享的是有关AngularJS如何实现单选框及多选框的双向动态绑定的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。AngularJS 在 中实现双向动态绑定十
千家信息网最后更新 2025年02月23日AngularJS如何实现单选框及多选框的双向动态绑定

这篇文章给大家分享的是有关AngularJS如何实现单选框及多选框的双向动态绑定的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

AngularJS 在 中实现双向动态绑定十分简单,如下所示:

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

1.

回家 回学校

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

2.

铃声 震动 呼吸灯

通过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

 1  {{item.postid}}   {{item.medname}}   {{item.medfact}}   {{item.medcnt}}    {{item.remark}}     {{item.tel}}     {{item.post_time}}      

感谢各位的阅读!关于"AngularJS如何实现单选框及多选框的双向动态绑定"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

0