2016-11-10 4 views
-1

KnockoutJSを初めて使用しています。チェックボックス、オプションボタン、テキストボックスなど、複数のコントロールを持つフォームがあります。保存ボタンをクリックすると、個々のコントロールやビューモデルから値を読み取り、データを保存するためにajax呼び出しを行う代わりに、オブジェクトに入力されたデータを保存する必要があります、アヤックス、保存ルーチンを呼び出して使用してKnockoutJSを使用してオブジェクトにデータを保存

var x = ko.toJSON(ObjectwithData()); 

してからJSONにオブジェクトを変換。 これをどのように達成できるのかをご案内してください。私はあなたがそれを行うサンプルコードを持っている、それは素晴らしいだろう。

+0

現在のところ、投稿は質問よりも一般的なやり方のように読み込まれています。 [mcve]を含めて*具体的な*問題や疑問がどこにあるのか教えてください。 – Jeroen

答えて

0

あなたの質問は明確ではありませんが、これは私が理解したものです。

フォームのすべてのデータをJsonオブジェクトにバインドする必要があります。例えばのための

:HTML形式で

:スクリプト

ここ
$(document).ready(function() { 

    var viewModel = function viewModel() { 
    var self = this; 
    self.Name = ko.observable(""); 
    self.Email = ko.observable(""); 
    self.Phone = ko.observable(""); 

    self.submit = function(){ 
    var postData = self.koToJson(); 

    } 

    self.koToJson = function(){ 
    return { 
    Name : self.Name(), 
    Email: self.Email(), 
    Phone: self.Phone() 
    }; 
    } 

    } 
    ko.applyBindings(viewModel); 



}); 

<div id="root"> 
    <p>Name</p> 
    <p> 
    <input type="text" data-bind="value:Name" /> 
    </p> 
    <p>Email</p> 
    <p> 
    <input type="text" data-bind="value:Email" /> 
    </p> 
    <p>Phone</p> 
    <p> 
    <input type="text" data-bind="value:Phone" /> 
    </p> 
    <p> 
    <button id="submit" data-bind="click:submit">Submit</button> 
    </p> 
</div> 

self.koToJson機能をJSONにKOデータを変換するために使用されます。これは、あなたが答えとしてそれをマークすることを忘れないでください助け場合

は、より多くの情報のため、このjsFiddile https://jsfiddle.net/ninshidme/nk45Lvnv/4/

をご覧ください。

ハッピーコーディング。

関連する問題