Javascript Can';t从视图中的输入到控制器中的角度
向控制器发送数据时出现问题。这是我的看法Javascript Can';t从视图中的输入到控制器中的角度,javascript,angularjs,Javascript,Angularjs,向控制器发送数据时出现问题。这是我的看法 <form ng-submit="submitMessage()"> <div class="form-group"> <input type="number" class="form-control input-sm" name="id_user" ng-model="messageData.id_user" value={{currentUser.
<form ng-submit="submitMessage()">
<div class="form-group">
<input type="number" class="form-control input-sm" name="id_user" ng-model="messageData.id_user" value={{currentUser.id}} >
</div>
<div class="form-group">
<input type="number" class="form-control input-sm" name="id_thread" ng-model="messageData.id_thread" value={{messages[0].id_thread}}>
</div>
<!-- COMMENT TEXT -->
<div class="form-group">
<input type="text" class="form-control input-lg" name="message" ng-model="messageData.text" placeholder="Write your message">
</div>
<!-- SUBMIT BUTTON -->
<div class="form-group text-right">
<button type="submit" class="btn btn-primary btn-lg submit-btn">Submit</button>
</div>
</form>
我在控制器中有一个console.log()来查看发送的是什么数据,而只发送文本。我试图隐藏前两个输入,并使其具有价值。它基本上是向线程发送注释,因此它包含用户id和线程id。我不希望它们可见,但我需要将它们发送到控制器。当我手动输入数字时,它工作正常,但当我在value=”“属性中有它时,我在控制台中得到这个错误:
angular.js:3505 The specified value "{{messages[0]['id_thread']}}" is not a valid number. The value must match to the following regular expression: -?(\d+|\d+\.\d+|\.\d+)([eE][-+]?\d+)?
angular.js:3505 The specified value "{{currentUser.id}}" is not a valid number. The value must match to the following regular expression: -?(\d+|\d+\.\d+|\.\d+)([eE][-+]?\d+)?
我不理解它,因为当我打开开发工具并查看值时,它是一个数字。当我想你需要去掉
value={{{currentUser.id}}
和value={{messages[0].id_thread}}
,因为ng model
设置了实际值。您可以在控制器初始化时使用初始值设置messageData
。我想您需要去掉value={{{currentUser.id}}
和value={{{messages[0].id_thread}
,因为ng model
设置了实际值。您可以在控制器初始化时使用初始值设置messageData
。如果在控制器初始化时具有currentUser.id值,则可以创建:
$scope.messageData={id\u user:currentUser.id}代码>
或
如果加载currentUser值需要一些时间,则将其分配回messageData对象:
$scope.messageData.id\u user=currentUser.id代码>
最后,删除value属性,错误就会消失。您可以对id_线程输入执行相同的操作。如果在控制器初始化时具有currentUser.id值,则可以创建:
$scope.messageData={id\u user:currentUser.id}代码>
或
如果加载currentUser值需要一些时间,则将其分配回messageData对象:
$scope.messageData.id\u user=currentUser.id代码>
最后,删除value属性,错误就会消失。您可以对id_线程输入执行相同的操作。ok,因此我删除了value属性。然后在发送文本值时,我在控制器本身中添加了所需的ID。我在localStorage中有用户id,线程id在URLok中,所以我删除了value属性。然后在发送文本值时,我在控制器本身中添加了所需的ID。我在localStorage中有用户id,线程id在URL中
angular.js:3505 The specified value "{{messages[0]['id_thread']}}" is not a valid number. The value must match to the following regular expression: -?(\d+|\d+\.\d+|\.\d+)([eE][-+]?\d+)?
angular.js:3505 The specified value "{{currentUser.id}}" is not a valid number. The value must match to the following regular expression: -?(\d+|\d+\.\d+|\.\d+)([eE][-+]?\d+)?