Javascript angularjs:如何获得与输入文本区完全相同的文本,包括新行?
在angularjs中,如何获得输入到Javascript angularjs:如何获得与输入文本区完全相同的文本,包括新行?,javascript,html,angularjs,Javascript,Html,Angularjs,在angularjs中,如何获得输入到html文本区域中的准确文本,我还想跟踪换行符,'\n'(在文本区域中)。我想将此文本区域存储到数据库中与输入文本区域完全相同。但是它把所有的文本都放在一行 如何检测新行被插入html区域 我可以使用{{someText}},但这并不能解决我的问题,因为我想存储到数据库中 <div class="col-md-12"> <div class="col-md-6"> <label >Loc
html文本区域
中的准确文本,我还想跟踪换行符,'\n'
(在文本区域中)。我想将此文本区域存储到数据库中与输入文本区域完全相同。但是它把所有的文本都放在一行
如何检测新行被插入html区域
我可以使用{{someText}}
,但这并不能解决我的问题,因为我想存储到数据库中
<div class="col-md-12">
<div class="col-md-6">
<label >Location Based Address </label>
<textarea rows="4" cols="25" class="form-control" ng-model="someText">
</textarea>
</div>
</div>
<pre>{{ someText }}</pre>
基于位置的地址
您可以用\n
替换空格并以这种方式存储,但我不确定此解决方案的“强度”有多大。您可以用\n
替换空格并以这种方式存储,但我不确定此解决方案的“强度”有多大。我相信此模型确实可以保存换行符等内容,请参阅您的plunkr上的小编辑,使用
标记显示数据
angular.module('app', ['ngSanitize'])
.controller('SomeController', function($scope,$sce) {
console.log($scope.someText);
$scope.$watch('someText', function(){
console.log($scope.someText);
$scope.text = $scope.someText;
$scope.text = $scope.text.replace(/\n\r?/g, '<br />');
$sce.trustAsHtml($scope.text)
})
})
此外,当我将数据保存到SharePoint列表中的“富文本”字段中时,它会保存换行符。我认为您的问题在于服务器没有保留新行。我相信模型确实保存了新行,因此,请参阅您的plunkr上的小编辑,使用
标记显示数据
angular.module('app', ['ngSanitize'])
.controller('SomeController', function($scope,$sce) {
console.log($scope.someText);
$scope.$watch('someText', function(){
console.log($scope.someText);
$scope.text = $scope.someText;
$scope.text = $scope.text.replace(/\n\r?/g, '<br />');
$sce.trustAsHtml($scope.text)
})
})
此外,当我将数据保存到SharePoint列表中的“富文本”字段中时,它会保存换行符。我认为您的问题在于服务器没有保留新行。文本区域的值通过
ng model=“someText”
按原样传递给someText
。您不需要像在控制台中看到的那个样对文本进行任何处理
如果要在页面上的某个位置打印值,同时在用户输入新行时保留新行,请使用
标记:
{{someText}
文本区域的值通过ng model=“someText”
按原样传递给someText
。您不需要像在控制台中看到的那个样对文本进行任何处理
如果要在页面上的某个位置打印值,同时在用户输入新行时保留新行,请使用
标记:
{{someText}
我不太确定发生了什么,但我会尝试对所有可能发生的事情进行粗略猜测:
替换全部\n并使用ng bind html()
嗯,我不太确定发生了什么,但我将尝试对所有可能发生的事情进行大胆猜测:
替换全部\n并使用ng bind html()
请检查我是否编辑了您的plunker代码
angular.module('app',['ngSanitize']))
.controller('SomeController',函数($scope,$sce){
log($scope.someText);
$scope.$watch('someText',function()){
log($scope.someText);
$scope.text=$scope.someText;
$scope.text=$scope.text.replace(/\n\r?/g,
);
$sce.trustAsHtml($scope.text)
})
})
希望这能对您有所帮助。请检查我是否编辑了您的plunker代码
angular.module('app',['ngSanitize']))
.controller('SomeController',函数($scope,$sce){
log($scope.someText);
$scope.$watch('someText',function()){
log($scope.someText);
$scope.text=$scope.someText;
$scope.text=$scope.text.replace(/\n\r?/g,
);
$sce.trustAsHtml($scope.text)
})
})
希望这能对你有所帮助。我不明白怎么回事。如果将ng模型绑定到文本区域,则文本中将包含“\n”字符,因此文本中将包含行。您能否在debogguer中检查将客户端发送到服务器的数据内容。这可能是服务器端的问题。刚才看到了您对plunkr的编辑:这个plunkr只是一个文本区域,并没有关于错误的信息。我不知道错误是什么。如果将ng模型绑定到文本区域,则文本中将包含“\n”字符,因此文本中将包含行。您能否在debogguer中检查将客户端发送到服务器的数据内容。这可能是服务器端的问题。刚才看到了你对plunkr的编辑:这个plunkr只是一个文本区域,没有关于错误的信息。谢谢martin,但我不想打印任何地方,而是想存储到数据库中,包括新行字符。我知道你想将它保存到数据库中。这不是问题,新行字符如预期的那样在字符串中,因此存储在数据库中不会产生任何问题。Tanks martin,但我不想在任何地方打印,而是想存储到数据库中,包括新行字符。我知道您想将其保存到数据库中。这不是问题,字符串中的新行字符与预期的一样,因此存储在数据库中不会出现问题anything@user1308874是的,我知道这不是一个真正的答案,但我觉得太长了,无法评论。不过,我正在帮助您搜索解决方案,所以如果发现任何问题,我将进行更新useful@user1308874是的,我知道这不是一个真正的答案,但我觉得这也是