次の動作を達成するにはどうすればよいですか。
knockout.js フォームから入力を取得すると、変数がページに送信されて処理されます。このページはPHPを使用しています
PHP ページは、knockout.js フォームから入力を受け取り、いくつかの計算を実行してから、結果を返します。
変数は元のページで受信され、ノックアウトを介して表示されます
たとえば、次のようなものがあるとします
//knockout_form.js
self.addItem = function() {
var itemNum = self.newItem; //variable received from knockout form
var returnedVariable = ???? **send itemNum to processing.php which will then return it**
self.itemNumbers.push(new ItemEntry(retunredVariable, "$20.00")); //
}
jQuery/Ajax を使用して processing.php に投稿できることは知っていますが、計算されたデータを processing.php から JavaScript ページに戻すにはどうすればよいですか?
以下を編集します。データは processing.php に送信されているように見えますが (ネットワーク タブに表示されます)、アラートは表示されません。
// Operations
self.addItem = function() {
var itemNum = self.newItem;
$.getJSON("processing.php?itemNum=" + itemNum),function(data) {
alert(data); //this does not appear
self.itemNumbers.push(new ItemEntry(data.result, "$20.00"));
}
}
phpはこちら
//$result = $_GET['itemNum'];
$result = "test"; //set it just to be sure it's working
echo json_encode(array("result" => $result));