2014-10-28 75 views
0

我需要从将由Angular post请求发送到后端的三个字段(前导字符,尾随字符和字符之间)中去除所有空白字符。数据从表单数据对象传递。目前我已经通过为Jackson创建自定义的反序列化器来解决这个问题,但是我会更有兴趣在他们到达我的Spring后端之前删除它们。从Angular post请求之前的字段中删除空格

function insertNumber(form, result) { 
    NumberSequence.save({"type": form.$name}, form.$data, 
     success(result), 
     error(form, result)); 
} 

数据包含在这里3个字段:

  • 开始
  • 结束

我需要过滤所有的人。

有什么建议吗?

+0

start.trim(),end.trim(),number.trim() – 2014-10-28 11:05:14

回答

1

AngularJS提供ng-trim指示这样做的看到input directive documentation。如果这不是您正在寻找的内容,请使用@KyleK建议的正则表达式。

+0

我的要求不仅扩展到前导和尾随空格,还扩展到单词之间的任何内容。不幸的是,ng-trim不提供它,因为无论如何,可能将不得不编写我自己的类似指令。 – Vaelyr 2014-10-28 11:28:37

+0

使用表单验证这种事情不是更容易吗?当您更改用户输入的数据时,用户体验受损... – 2014-10-28 11:32:31

+0

实际上再次读取需求。认为它是由我组成的,以除去单词/数字之间的空格。他们只需要领先和尾随如此修剪默认应该做的工作:) – Vaelyr 2014-10-28 11:42:39

0

在你的函数的开头:

for (var i in form.$data) { 
    form.$data[i] = form.$data[i].replace(/^\s+/g, '').replace(/\s+$/g, ''); 
} 

或者使用.trim(),但本身不支持IE 9之前

+0

对于这种方法没什么用。另外$ data对象可能有未定义的字段,这会使代码太难看。不过谢谢。 – Vaelyr 2014-10-28 11:29:29