如何使用 AngularJS 从服务器数据设置复选框 ng-checked 并将 checked/unchecked 保存回服务器数据?
How to set checkbox ng-checked from server data using AngularJS and save the checked/unchecked back to server data?
这应该是一个很常见的问题,调用一个ng-model将数据解析成表单(DOM),然后修改后的checkbox的ng-checked会被转换回数据值,以便保存回到服务器上。
我分别有两个复选框
<table><tbody>
<tr>
<td align="left">To be ignored</td><td align="left">Yes
<input type="checkbox" ng-model="nm_ignore" /></td>
<td></td>
</tr>
<tr>
<td align="left">To be excluded</td><td align="left">Yes
<input type="checkbox" ng-model="nm_exclude" /></td>
<td></td>
</tr>
</tbody>
</table>
而且,我的数据是
$scope.nm_to_ignore = _a_record._ab_ignore; // "T"
$scope.nm_to_exclude = _a_record._ab_x_style; // "F"
我的objective是:
我想要一种直接简单的方法(易于维护的代码,即 angularJS ng-model)通过从服务器读取的数据设置复选框 CHECKED/UNCHECKED。 此外,我希望能够将 CHECKED/UNCHECKED 表示的值原封不动地保存到数据中。
$scope 的 DOM 中的复选框对象。 注意 我使用属性 ng-true-value="'T'"
和 ng-false-value="'F'"
告诉翻译器将我的 CHECKED 转换为值 "T" 和 UNCHECKED 为 "F"我的数据库理解的数据存储在服务器上。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="_assets/js-main/angular-1.5.8.min.js"></script>
<script src="_assets/JS-Main/angular-route-1.5.8.js"></script>
<!-- <..DOM..stuffs..> -->
<tr>
<td ><input type="checkbox" ng-model="nm_exclude"
ng-true-value="'T'" ng-false-value="'F'" /></td>
<td ><input type="checkbox" ng-model="nm_ignore"
ng-true-value="'T'" ng-false-value="'F'" /></td>
</tr>
正在从服务器获取数据 -->
var A1 = angular.module('_mod_1', ['ngRoute', 'ngSanitize']);
A1.config(function ($locationProvider) {
$locationProvider.html5Mode(true);
});
A1.controller
('Controller',
function ($scope, $location, $http) {
angular.element(document)
.ready(function () {
$http.get(_endGet, config)
.success(function (serverdata, status, config) {
_a_record = serverdata;
/* lines of code */
$scope.nm_ignore = _a_record._ab_ignore; //"T"
$scope.nm_exclude = _a_record._ab_x_style; //"T"
});;
});
//Things to Do ...
}
);
希望以上对您有所帮助。祝你好运! (如果映射值不是数字,请注意 单引号 闭包:ng-true-value="'T'
",如果您把他们排除在外!)
这应该是一个很常见的问题,调用一个ng-model将数据解析成表单(DOM),然后修改后的checkbox的ng-checked会被转换回数据值,以便保存回到服务器上。
我分别有两个复选框
<table><tbody>
<tr>
<td align="left">To be ignored</td><td align="left">Yes
<input type="checkbox" ng-model="nm_ignore" /></td>
<td></td>
</tr>
<tr>
<td align="left">To be excluded</td><td align="left">Yes
<input type="checkbox" ng-model="nm_exclude" /></td>
<td></td>
</tr>
</tbody>
</table>
而且,我的数据是
$scope.nm_to_ignore = _a_record._ab_ignore; // "T"
$scope.nm_to_exclude = _a_record._ab_x_style; // "F"
我的objective是:
我想要一种直接简单的方法(易于维护的代码,即 angularJS ng-model)通过从服务器读取的数据设置复选框 CHECKED/UNCHECKED。 此外,我希望能够将 CHECKED/UNCHECKED 表示的值原封不动地保存到数据中。
$scope 的 DOM 中的复选框对象。 注意 我使用属性 ng-true-value="'T'"
和 ng-false-value="'F'"
告诉翻译器将我的 CHECKED 转换为值 "T" 和 UNCHECKED 为 "F"我的数据库理解的数据存储在服务器上。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="_assets/js-main/angular-1.5.8.min.js"></script>
<script src="_assets/JS-Main/angular-route-1.5.8.js"></script>
<!-- <..DOM..stuffs..> -->
<tr>
<td ><input type="checkbox" ng-model="nm_exclude"
ng-true-value="'T'" ng-false-value="'F'" /></td>
<td ><input type="checkbox" ng-model="nm_ignore"
ng-true-value="'T'" ng-false-value="'F'" /></td>
</tr>
正在从服务器获取数据 -->
var A1 = angular.module('_mod_1', ['ngRoute', 'ngSanitize']);
A1.config(function ($locationProvider) {
$locationProvider.html5Mode(true);
});
A1.controller
('Controller',
function ($scope, $location, $http) {
angular.element(document)
.ready(function () {
$http.get(_endGet, config)
.success(function (serverdata, status, config) {
_a_record = serverdata;
/* lines of code */
$scope.nm_ignore = _a_record._ab_ignore; //"T"
$scope.nm_exclude = _a_record._ab_x_style; //"T"
});;
});
//Things to Do ...
}
);
希望以上对您有所帮助。祝你好运! (如果映射值不是数字,请注意 单引号 闭包:ng-true-value="'T'
",如果您把他们排除在外!)