「ノート」に関する各学生のデータを取得する必要がありますが、試した方法は機能していないようです...何か助けやアドバイスをいただければ幸いです。ノックアウト:データを取得する
<table data-bind="foreach: students">
<tr>
<th>ID</th>
<th>Nume</th>
<th>Prenume</th>
<th>Data</th>
</tr>
<tr>
<td><input type="text" size="1" data-bind="value: StudId" disabled="disabled"></td>
<td><input type="text" size="60" data-bind="value: Nume" disabled="disabled"></td>
<td><input type="text" size="60" data-bind="value: Prenume" disabled="disabled"></td>
<td>
<input type="text" size="15" data-bind="value: Data" disabled="disabled">
<input data-bind="click: $parent.deleteStudent.bind($parent, $data.StudId)" type="button" value="Sterge" class="button button1" id="sterge" />
<input data-bind="click: function() { $parent.loadNote.bind($parent, $data.StudId)(); alert(// I wanna display the received json in this alert box); }" type="button" class="button button2" value="Note" />
</td>
</tr>
</table>
ノックアウト1:
<script type="text/javascript">
var uri = 'api/student';
var StudentsViewModel = function() {
this.students = ko.observableArray();
this.note = ko.observableArray();
this.loadNote();
this.loadStudents();
};
StudentsViewModel.prototype.loadStudents = function() {
var self = this;
$.getJSON(uri, function (data) {
self.students(data);
});
};
StudentsViewModel.prototype.loadNote = function (id) {
var self = this;
$.getJSON(uri + '/' + id, function (data) {
self.note(data);
});
};
// Apply bindings
ko.applyBindings(new StudentsViewModel());
私は学生のリストを持っていると「注意」ボタンを押すことによって、私は警告ボックスにそれらについての表示内容をたい。
EDIT:
var StudentsViewModel = function() {
this.students = ko.observableArray();
this.note = ko.observableArray();
this.loadStudents();
this.loadNote();
};
StudentsViewModel.prototype.loadStudents = function() {
var self = this;
$.getJSON(uri, function (data) {
self.students(data);
});
};
JSON学生モデル:
{
"StudId": 7,
"Nume": "Mihalache",
"Prenume": "Florin",
"Data": "2016-07-05T12:00:00"
}
JSON注モデル:あなたが学生のノートのための別のAPI呼び出しを持っているので、あなたがしている
{
"Student": "Mihalache Florin",
"NotaId": 1,
"Materie": "Matematica",
"Nota": 10,
"Status": true
}
どのコンソールエラーが表示されていますか?あなたのデータが 'loadStudents' ajaxレスポンスのように表示されるようにしてください。あなたのhtmlデータバインドから見ることができるのは、 '$ parent.deleteStudent'があなたのKO ViewModelに存在しないということです。それはデータの処理を停止します。 –
@Benそれは存在しますが、私はここに投稿しませんでした。私は '/ api/student/id'からjsonを取得してアラートボックスにフォーマットする方法を知りません。他のメソッドはコンソールエラーで正しく動作しています。今すぐ受信しているエラーはbadrequest()です。 – Florin
@BenSewards私は質問を編集し、学生のためのデータをどのように取得するのかを掲載しました。 – Florin