2017-03-22 8 views
0
以下

がされて動作していないngのモデルは、私の見るページAngularJSでNG-値で

<form name="form"> 
    <label>Name</label> 
    <input name="name" type="text" ng-model='user.name' ng-value='emp.name' required /> 
    <span ng-show="form.name.$touched && form.name.$invalid">Name is required</span> 
    <button ng-disabled="form.name.$touched && form.name.$invalid" ng-click='formUpdate()'>Update</button> 
</form> 

これは私のコントローラである私は、データ使用しています

$scope.formUpdate = function() { 
    $scope.status = false; 
    $http({ 
    method : 'POST', 
    url : 'model/update.php', 
    data : $scope.user , 
    headers : {'Content-Type': 'application/x-www-form-urlencoded'}   

    }).then(function mySuccess(response) { 
    $scope.update = response.data; 
    console.log(response.data); 
    }, function myError(response) { 
    $scope.update = response.statusText; 

    }); 
}; 

:で$scope.userを私のHTTPコールコンソール上で空白の値を取得していますが、データを使用した場合:$scope.emp、入力フィールドの値が更新されることはありません。

+0

期待される結果が何であるかをTHS 'NG-場合[値]の目的は何ですか? – Mistalis

+0

フォームの助けを借りて更新ロジックを実装しています。ng-valueはテーブルの古い値を持ち上げます。フィールド値を更新したい場合は、新しい値をDBに反映させてください。 –

+0

これは私が推測したものです私の答え**](http://stackoverflow.com/a/42952719/4927984)。 – Mistalis

答えて

0

このコードを試してください。

$scope.formUpdate = function(){ 
    $scope.status = false; 
    $scope.$applyAsync(); 

    $http({ 
    method : 'POST', 
    url : 'model/update.php', 
    data : $scope.user , 
    headers : {'Content-Type': 'application/x-www-form-urlencoded'}   

    }).then(function mySuccess(response) { 
    $scope.update = response.data; 
    $scope.$applyAsync(); 
    console.log(response.data); 
    }, function myError(response) { 
    $scope.update = response.statusText; 
    $scope.$applyAsync(); 
    }); 

    }; 
2

ng-value要素の値に与えられた式を結合します。

質問がわかりましたので、入力値をemp.nameに初期化しようとしています。

あなたがあなたの入力を変更する必要があります。

<input type="text" ng-model='user.name' ng-init='user.name = emp.name' required /> 

ng-init docs

+0

ありがとうございましたMistalis、与えられた解決策は私のために働いていません –

+0

@wasimbeg「*働いていない」と説明できますか?それ以上の精度であなたを助けることはできません... – Mistalis