我是angularjs的新手,我想创建一个像谷歌一样的应用程序。我成功地以列表格式获取<p>
标记内的数据。我的条件是每当我在<p>
标签中进行任何更改时,它都在数据库中。我试图用ngKeyup()做到这一点,但我没有成功,所以我删除了ngKeyup()
。我怎么能用ajax jquery或javascript做到这一点?
--- ---视图
<ul ng-repeat="n in notes">
<li>
<p class="note-preview" ng-model="note_content">{{n.note_content}}</p>
</li>
</ul>
--- --- JS
angular.module('app')
.controller('GlobalCtrl', ['$scope','$http', function($scope,$http) {
$http.get("notes/get_notes").then(function(result) {
$scope.notes = result.data;
console.log($scope.notes);
});
}]);
--- CI控制器---
public function get_notes() {
$user_id = $_SESSION['user_id'];
$userdata = $this->notes_model->get_user_note($user_id);
echo json_encode($notedata);
}
--- CI模式---
public function get_user_note($user_id) {
$this->db->select('*');
$query = $this->db->get_where('note', array('employee_id' => $user_id));
return $query->result_array();
}
答案 0 :(得分:0)
除非你去掉你的保存功能,否则在keyUp上执行此操作是没有意义的。想象一下,每次按下键盘后都会调用后端,你很快就会用ajax请求充斥后端。
看看angular-debounce,然后你可以在notes数组上使用$ watch来运行保存功能。