Tag: knockout.js

将大型JSON对象发布到ASP.NET MVC

我正在使用KnockoutJS的映射插件将我的模型转换为Knockout对象。 但是我在将大型json对象发送回服务器时遇到问题。 我的ajax调用看起来像这样: $.ajax({ url: “/home/DoStuff”, type: “POST”, data: JSON.stringify({ deal: ko.toJS(myObjectViewModel) }), contentType: “application/json”, dataType: “json”, success: function (result) { console.log(result); }, error: function (xhr, status, message) { console.log(xhr); } }); 执行此脚本永远不会命中控制器中的DoStuff操作。 当我用Firebug检查时,POST就会继续旋转。 在Firebug的Net选项卡中,它表示Post Body为159.9 KB,Total Sent为165.1 KB(包括标题)。 如果它被发送,为什么它没有在代码中击中我的断点? 但是,当我只发送myObjectViewModel的属性时,它会发布很好,一切都很成功。 因此,我认为问题在于发布的数据大小。 所以我尝试增加maxJsonLength。 这没有用。 还有什么我应该做的吗?

跳过foreach knockout js数组中的项目?

我有关于淘汰赛和第一项的foreach的这个问题。 我想跳过第一个并迭代下一个项目。 主要问题是我想做这样的事情:

如何使用KnockoutJS数据绑定iframe的内容?

任何人都可以告诉我如何使用Knockout将数据绑定到iframe ? 我试过这样做,如下所示,但它没有按预期工作: 和Javascript: var ViewModel = function (content) { this.testcontent = ko.observable(content); }; ko.applyBindings(new ViewModel(“Hello World!!”)); 我想在iframe添加“Hello Content”文本。 有人可以帮我吗?

Knockout cleanNode()删除了jquery事件绑定?

Knockout的cleanNode()函数似乎正在删除节点内元素的jQuery事件绑定。 我怎么能阻止这个? 我在cleanNode()上找不到太多文档。

KnockoutJS:如何从子数组中删除项?

问题: 我还在学习淘汰赛,如果我的方法有误,请指导我。 这是我的小提琴: http : //jsfiddle.net/amitava82/wMH8J/25/ 在onclick编辑时,我收到了json模型,它在视图中表示,我想从模型中删除某些项(子数组)或操作(父数组)(我删除了添加UI以添加更多来自小提琴的动作以简化)然后最终将模型传递回服务器。 现在,从根级别删除很容易。 我坚持删除ActionItems数组中ActionParamaters的单个项目。 题: 如何从子arrays中删除项目?

Knockout Mapping重新渲染所有内容

我正在使用Knockout映射插件来刷新UI,每3秒从服务器检索一次JSON。 UI由一些嵌套的foreach绑定组成。 但是,即使没有任何更改,似乎所有foreach绑定中的所有内容都会被完全删除并在每次刷新时重新呈现。 var testData = { Answers: [], Inspectable: { Categories: [{ Id: 1, Name: “Test Category”, Questions: [{ Id: 1, Text: “Test Question”, Active: true, Answers: [{ Text: “Test Answer”, Id: 1 }] }] }] } }; function ViewModel() { var self = this; this.refreshUrl = $(“[data-view=edit]”).data(“url”); this.refresh = function(callback) { $.get(self.refreshUrl, function(data) […]

Knockoutjs中的BindingHandler。 建立自己的ListView

我想用selectedItem和Itemsource构建我自己的listView。 我已经开始了一个jsFiddle http://jsfiddle.net/andersb79/53xRL/1/ 能否帮助我正确指导我如何建立这个目标。 我没有看到这样做的具有约束力的汉德尔。 我想要的是这样的。 data-bind=”myListView : { items : comments, selectedItem : selectedComment}”

将Knockout数据驱动表添加到Knockout Data Driven Accordion Pane

我正在尝试创建一种我希望在我的应用程序中使用的通用控件。 它将是一个标准的手风琴(我使用Twitter Bootstrap),这取决于我从服务器收到的JSON数据将创建多少个手风琴章节。 在每个手风琴部分,我想添加一个普通的HTML表格,该表格也是使用从服务器获取的JSON数据构建的。 一切都将在客户端运行,接受Ajax的初始post以获取JSON信息。 所以我相信某种HTML模板是必需的? 所以这就是我到目前为止所拥有的。 JSON数据: var data = { “d”: [ { “__type”: “Warehouse.Tracntrace.Members_Only.DLL.StockMovement.AvailibleStock”, “WarehouseID”: 1, “ProductSKUID”: 1, “ProductSKUName”: “Decoder 1132”, “WarehouseName”: “SoftwareDevelopmentTest”, “Status”: “Staging”, “QtyUnassigned”: 10 }, { “__type”: “Warehouse.Tracntrace.Members_Only.DLL.StockMovement.AvailibleStock”, “WarehouseID”: 1, “ProductSKUID”: 2, “ProductSKUName”: “Decoder 1131”, “WarehouseName”: “SoftwareDevelopmentTest”, “Status”: “Staging”, “QtyUnassigned”: 5 } ] }; var data2 = { “d”: […]

如何使用Knockout.js过滤Google地图标记

我试图通过输入框过滤地图标记。 我想对地图标记名称属性上的标记进行全文排序。 // JS 我以为我可以将标记添加到数组中并尝试清除它们但它不起作用。 这是我的标记数组。 this.markers = ko.observableArray([]); //Create array of hotspot locations this.hotSpotList = ko.observableArray([]); 这会将我的“hotSpot”对象添加到热点arrays中 initialHotSpots.forEach(function(spot){ self.hotSpotList.push(new hotSpot(spot)); }); 这是针对hotSpots name属性搜索的filter字符串。 this.filter = ko.observable(“”); 这是过滤后的数组的计算值。 这部分有效,因为我可以使用视图上的foreach数据绑定对我的数组列表进行排序。 this.searchLocation = ko.computed(function() { var filter = this.filter().toLowerCase(); if (!filter) { return this.hotSpotList(); } else { return ko.utils.arrayFilter(this.hotSpotList(), function(item){ return item.name().toLowerCase().indexOf(filter) != -1; }); } }, […]

使用带有knockoutjs的prettyCheckable插件2.1检查数据绑定不起作用

我正在使用prettyCheckable jquery插件使我的复选框和单选按钮看起来很漂亮,如果我使用data-bind =“checked:dateMode”它不起作用,因为插件隐藏了实际的复选框并使它自己覆盖html到漂亮复选框/收音机,因此当我检查收音机或复选框并更新模型中的值时,knockoutjs lib无法识别。 我知道如果我不使用prettyCheckable插件我的代码工作正常,所以不要告诉我我的模型或数据绑定代码搞砸了。 我测试了这个。 https://github.com/arthurgouveia/prettyCheckable 这是我的部分视图代码。 Dates to 这是我的淘汰模型: function searchVm() { var self = this; self.dateMode = ko.observable(“All”); self.startSearch = function () { alert(self.dateMode()); }; }; 我初始化prettyCheckable这样的东西: $(‘input:checkbox’).prettyCheckable(); $(‘input:radio’).prettyCheckable(); 以下是在PrettyCheckable插件修改后呈现的代码,注意输入样式是如何“display:none”: All Available Range to