如果最后输入的字符是空格,我如何检查我的ng-change函数内部? 必须将ng-trim设置为true。检查是否最后输入的字符是空格
我累了去我最后键入字符由
myStr.substr(myStr.length - 1)
,但我比较时此为“”或别的东西,它没有工作。当最后一个字符是空格时,我必须增加一个计数器,但我不能等待另一个字符。
编辑: 我累算的空间,采用NG-修剪(因此它是不可能的),所以对于这个问题的答案是很好,当NG-微调被设置为默认值 - 真实。
如果最后输入的字符是空格,我如何检查我的ng-change函数内部? 必须将ng-trim设置为true。检查是否最后输入的字符是空格
我累了去我最后键入字符由
myStr.substr(myStr.length - 1)
,但我比较时此为“”或别的东西,它没有工作。当最后一个字符是空格时,我必须增加一个计数器,但我不能等待另一个字符。
编辑: 我累算的空间,采用NG-修剪(因此它是不可能的),所以对于这个问题的答案是很好,当NG-微调被设置为默认值 - 真实。
您可以检查以下的正则表达式的文本值是否以空格结尾: /\s$/
/\s$/
意味着在字符串的结尾空白。 \s
包括标签太(\ t)如果你只需要使用空间:/ $/
的JavaScript
var myStr = "some random string ";
if(/\s$/.test(myStr)) {
// string contains space at last
} else {
//string does not contain space at last
}
使用String.prototype.substr(start, from)
var str = "lego ";
str.substr(str.length-1, str.length-2)===" "
> true
甚至更好使用String.prototype.endsWith(value)
var str = "lego ";
str.endsWith(" ");
> true
HTML
<input ng-model="vm.value" ng-change="vm.onChange()">
JS
vm.value = '';
vm.counter = 0;
vm.onChange = function() {
if (vm.value[vm.value.length - 1] === ' ') {
vm.counter++;
}
};
时NG-微调设置为false(我需要用这个作为一个真正的)它不只是工作,但后来我不必须写这种计数器因为所有的空间都被计算在内。 – adm
如果'ng-trim'为true,那么在值的末尾就不会有空格 –
去做就NG-按键 – RahulB