エンティティ (私の例では Company) を更新または作成するためのフォームを含む Bootstrap Modal があります。現在、私の問題は、モーダルを使用してエンティティを表示すると、モーダルを閉じてもフィールドがクリアされないことです。「作成」ボタンをクリックすると、フォームが入力されたままになり、空白のモーダルが表示されます。
通常の JavaScript から ViewModels メソッドの 1 つを実行するにはどうすればよいですか? これが私のコードの一部です:
function ViewModel() {
var self = this;
function CompanyViewModel(company) {
var self = this;
self.Id = company.CompanyId;
self.Name = company.Name;
}
function BlankCompanyViewModel() {
var self = this;
self.Id = 0;
self.Name = "";
}
self.company = ko.observable();
self.companies = ko.observableArray();
self.clearCurrentCompany = function() {
self.company(new BlankCompanyViewModel());
};
// Initialize the view-model
$.getJSON("/api/company", function(companies) {
$.each(companies, function(index, company) {
self.companies.push(new CompanyViewModel(company));
});
self.clearCurrentCompany();
});
}
理想的には、次のようにモーダルの「非表示」イベントで ViewModel.clearCurrentCompany を実行したいと思います。
$('#myModal').on('hidden', function() {
//Do something here, not sure what
});