我有一个textarea,其中包含以下格式的值
param01 : value01
param02 : value02
为什么我试试
<div class="col-xs-4 input-container">
<textarea id="gateway-params" ng-disabled="!edit">{{gatewayParams}}</textarea>
</div>
JS:
$scope.save = function() {
for (var i = 0; $scope.gatewayParams; i++) {
console.log(params[i]);
}
}
我想逐行阅读textearea并构建一个Javasript对象。
Regars!
答案 0 :(得分:1)
//编辑,不要添加空键/值
她是一名傻瓜:http://plnkr.co/edit/Zea3zZqaagDdO4s8pZRC?p=preview
控制器方:
$scope.text = 'param01 : value01\nparam02 : value02\nparam03 : value03\nparam04 : value04\nparam05 : value05\nparam06 : value06\n';
$scope.actionme = function(){
var lines = $scope.text.split("\n");// you get the lines
var datas ={};
for(var i in lines){
var line = lines[i].split(":"); // you get the key / value
// add only if the key and value not empty
if((line.length ==2)&&(line[0].trim()!="")&&(line[1].trim()!="")){
datas[line[0].trim()] = line[1].trim();
}
}
console.log(JSON.stringify(datas));
}
html
<div ng-controller="Ctrl">
<textarea ng-model="text">
</textarea>
<button ng-click="actionme()">click</button>
</div>
答案 1 :(得分:0)
在textarea中使用ng-model,您可以将内容捕获为字符串并在控制器/指令中解析。
您可以使用
- (id) returnStuff {
NSData *data = [myUserDefaults objectForKey:myKey];
if([data isKindOfClass:[NSData class]) {
// then it must be an archived object
return (desiredObjectClass*)[NSKeyedUnarchiver unarchiveObjectWithData:data];
}
else {
NSUInteger returnInt = [myUserDefaults integerForKey:myKey];
return [NSNumber numberWithInteger: returnInt];
}
通过换行将字符串拆分为字符串数组。我将离开解析给你,但这是你设置对象的方式:
.split('\n');