当我尝试使用angular.element获取input元素的值时,它返回未定义.
这是我的代码:
这是我的代码:
$scope.registerUser = function(){
console.log(angular.element('#username').value); // undefined console.log(document.getElementById('username').value); // sampleName
};
如何使用angular.element获取该值
解决方法
说明
你应该使用类似于jQuery的$.fn.val
的val
方法:
console.log(angular.element('#username').val());
或者,您可以使用纯HTMLInputELement的value属性:
console.log(angular.element('#username')[0].value);
…因为angular.element实例是一个类似数组的HTMLElements集合,每个元素都可以被其索引访问.
正确的做法
但是,您应该永远不会在Angular应用程序的上下文中读取这样的输入值.而是直接使用ngModel指令并将输入值绑定到角度模型:
$scope.registerUser = function() { console.log($scope.username); };
你拥有的HTML在哪里
<input type="text" ng-model="username">