我刚刚开始使用 Knockout.js 我的表单包含我称之为问题的元素。我根据用户选择隐藏/显示它们。当用户点击提交按钮时,我只想在提交时发布可见的问题。我所拥有的是:
// length of Results(questionArray) is 260
var vmToPost = viewModel;
delete vmToPost.__ko_mapping__;
ko.utils.arrayForEach(vmToPost.Results(), function (question) {
if (!(vmToPost.getQuestion(question.QuestionID()).visible())) {
ko.utils.arrayRemoveItem(vmToPost.Results(), question);
}
});
util 函数 arrayForEach 的行为很奇怪。它以非常不同的方式循环遍历数组。我必须点击提交按钮 7 次才能获取所有可见元素并退出 util 函数。它不会在控制台或提琴手中抛出任何错误消息。我究竟做错了什么。请帮忙。