テキストボックスで編集する値を取得したい、つまり、最初にテキストボックスが空になり、ユーザーが編集リンクをクリックすると、値がテキストボックスに入力されます。ユーザーは値を変更し、保存ボタンをクリックすると、新しい値が更新されます。以下はコードです:
HTML コード: 保存
コントローラ:
$scope.fetch = function(id) {
var elem = angular.element($element);
var dt = $(elem).serialize();
dt = dt+"&id="+id;
dt = dt+"&action=fetch";
alert(dt);
console.log($(elem).serialize());
$http({
method: 'POST',
url: 'php/products.php',
data: dt,
headers: {'Content-Type': 'application/x-www-form-urlencoded'}
}).success(function(data, status) {
//~ $scope.status = status;
//~ $scope.data = data;
$scope.rs = data;
console.log($scope.rs); // Show result from server in our <pre></pre> element
}).error(function(data, status) {
$scope.data = data || "Request failed";
$scope.status = status;
});
};
Products.php:
if($action == 'fetch') {
$query = '
SELECT
*
FROM
product
WHERE
`product_id` ="' . $_POST['id'] . '"
';
$result = mysql_query($query) OR die(mysql_error());
$data = array();
$row = mysql_fetch_assoc($result);
echo json_encode($row);
//print_r($row);
}
このコードは機能していません。ユーザーが任意のユーザーの編集リンクをクリックすると、テキスト ボックスに値オブジェクト オブジェクトが入力されます。値を印刷すると印刷されますが、テキストボックスに割り当てようとすると、オブジェクトオブジェクトで埋められます。どこで間違っていますか?どうすればこれを解決できますか?