Angularjs ng 模型无法输入 [文本])
Angularjs ng-model not working input[text])
我有一个来自数据库的循环数据,这很好用,值在输入字段中,但是当我想在单击 angular return 后读取此值时,我:
Object {newName: undefined, newEmail: undefined}
而且我不知道为什么。请帮忙。
HTML 代码:
<tr ng-repeat="user in users">
<td><input type="text" ng-model="user.name" name="user.name" ></td>
<td><input type="text" ng-model="user.email" name="user.email" ></td>
<td><button ng-click="checkData()">Click</button></td>
</tr>
控制器代码:
$scope.user = {};
$scope.checkData = function () {
var data = {
newName: $scope.user.name,
newEmail: $scope.user.email
};
console.log(data);
在您的 ng-repeat
代码中,您显示了 users
的每个元素,并且在 table
的 tr
中显示了另一个元素的下方。当您想访问您正在编辑的元素时,您需要将该 user
对象传递给 checkData
方法,以便您可以访问该特定的特定用户。
标记
<tr ng-repeat="user in users">
<td><input type="text" ng-model="user.name" name="user.name" ></td>
<td><input type="text" ng-model="user.email" name="user.email" ></td>
<td><button ng-click="checkData(user)">Click</button></td>
</tr>
代码
$scope.checkData = function (user) {
var data = {
newName: user.name,
newEmail: user.email
}
console.log(data);
};
您需要为函数提供您要评估的 DOM 的数据,即当前用户:
您可以使用
<tr ng-repeat="user in users">
<td>{{user.name}}</td>
<td>{{user.email}}</td>
<td><button ng-click="check(user)"></button></td>
</tr>
$scope.check = function (thing) {
var currentUser = {
name: thing.name,
email: thing.email
}
}
在您的 ng-click
中传递 user
模型,使其变为 ng-click="checkData(user)"
然后,将您的控制器代码重写为:
$scope.user = {};
$scope.checkData = function (user) {
console.log(user);
};
我有一个来自数据库的循环数据,这很好用,值在输入字段中,但是当我想在单击 angular return 后读取此值时,我:
Object {newName: undefined, newEmail: undefined}
而且我不知道为什么。请帮忙。
HTML 代码:
<tr ng-repeat="user in users">
<td><input type="text" ng-model="user.name" name="user.name" ></td>
<td><input type="text" ng-model="user.email" name="user.email" ></td>
<td><button ng-click="checkData()">Click</button></td>
</tr>
控制器代码:
$scope.user = {};
$scope.checkData = function () {
var data = {
newName: $scope.user.name,
newEmail: $scope.user.email
};
console.log(data);
在您的 ng-repeat
代码中,您显示了 users
的每个元素,并且在 table
的 tr
中显示了另一个元素的下方。当您想访问您正在编辑的元素时,您需要将该 user
对象传递给 checkData
方法,以便您可以访问该特定的特定用户。
标记
<tr ng-repeat="user in users">
<td><input type="text" ng-model="user.name" name="user.name" ></td>
<td><input type="text" ng-model="user.email" name="user.email" ></td>
<td><button ng-click="checkData(user)">Click</button></td>
</tr>
代码
$scope.checkData = function (user) {
var data = {
newName: user.name,
newEmail: user.email
}
console.log(data);
};
您需要为函数提供您要评估的 DOM 的数据,即当前用户:
您可以使用
<tr ng-repeat="user in users">
<td>{{user.name}}</td>
<td>{{user.email}}</td>
<td><button ng-click="check(user)"></button></td>
</tr>
$scope.check = function (thing) {
var currentUser = {
name: thing.name,
email: thing.email
}
}
在您的 ng-click
中传递 user
模型,使其变为 ng-click="checkData(user)"
然后,将您的控制器代码重写为:
$scope.user = {};
$scope.checkData = function (user) {
console.log(user);
};