角度XEDITATITATICALとAJAXを見つける場所の簡単な例
-
21-12-2019 - |
質問
今、Angular-Xeditableを使用しています.Iデータをサーバーに送信したい。
<div ng-controller="Ctrl">
<a href="#" id='username' editable-text="user.name">{{ user.name || "empty" }}</a>
</div>
.
とJSコードは
です <script type="text/javascript">
var app = angular.module("app", ["xeditable"]);
app.controller('Ctrl', function($scope,$http) {
$scope.user = {
name: 'awesome user'
};
$http.post("<?php echo base_url(); ?>index.php/welcome/test", {"name":name})
.success(function(data, status, headers, config) {
$scope.data = data;
})
.error(function(data, status, headers, config) {
$scope.status = status;
});
});
</script>
.
i name変数は空の値です。 このコードは機能しません.Iが見つかりません。
解決
onaftersave
イベント上のサーバーに投稿するコードを呼び出す必要があります。
このイベントは、入力ボックスの変更がモデルに設定された後に呼び出されます。
HTMLのonaftersave
属性の関数呼び出しを次のように属します。
<div ng-controller="Ctrl">
<a href="#" id='username' onaftersave='postName()' editable-text="user.name">{{ user.name || "empty" }}</a>
</div>
.
コントローラ内では、実際にデータをサーバに投稿するPOSTNAME関数を作成します。あなたのコードは次のようになります:
<script type="text/javascript">
var app = angular.module("app", ["xeditable"]);
app.controller('Ctrl', function ($scope, $http) {
$scope.user = {
name: 'awesome user'
};
// Called on the onaftersave event of xeditable
$scope.postName = function () {
$http.post("<?php echo base_url(); ?>index.php/welcome/test", {"name": $scope.user.name})
.success(function (data, status, headers, config) {
$scope.data = data;
})
.error(function (data, status, headers, config) {
$scope.status = status;
});
}
});
</script>
. 所属していません StackOverflow