Knockout - ko.observableArray.fn.pushAll

http://stackoverflow.com/questions/9967976/update-knockout-js-observable-from-json/9968443#9968443

HTML

<div class='liveExample'> 
    
    <form method='POST'> 
        <p>You have asked for <span data-bind='text: users().length'>&nbsp;</span> User(s)</p> 
        <table data-bind='visible: users().length > 0'> 
            <thead> 
                <tr> 
                    <th>user_id</th> 
                    <th>password</th>
                    <th /> 
                </tr> 
            </thead> 
            <tbody data-bind='template: { name: "userRowTemplate", foreach: users }' /> 
        </table> 
        
        <button data-bind='click: addUser'>Add User</button> 
       
    </form> 
    
    <script id='userRowTemplate' type='text/html'> 
        <tr>
<td><input class='required' data-bind='value: user_id, uniqueName: true' /></td>
<td><input class='required number' data-bind='value: password, uniqueName: true' /></td>
          
        </tr>
    </script> 
    
    
</div>

JavaScript

function Users(user_id, password) {
    this.user_id = ko.observable();
    this.password = ko.observable();
}

var viewModel = {
    users: ko.observableArray([]),
    addUser: function() {
        this.users.push({
            user_id: "",
            password: ""
        });
    },
};

viewModel.users();
ko.applyBindings(viewModel);