草庐IT

Knockout

全部标签

javascript - knockout 'for' 绑定(bind)?

原始问题是否有人拥有或知道允许类似于for循环的行为的knockout绑定(bind)?我可以让foreach做我想做的事,但如果我不必那样做就好了。编辑2我正在尝试根据用户所做的选择创建表格行。在某些情况下,我需要x行,其中x是数组的长度,有时x表示显示n个数组所需的最大行数。例如:image1是基于4个大小不同的数组构建的image2是从同一个数组构建的,在本例中是加倍的。//$parentContext.$index()-->以上工作正常并创建了我想要的内容,但我不喜欢将selectedTab.runners从数字转换为空数组只是为了使其循环n次以创建行。我愿意接受建议。注意在我

javascript - 使用knockout js上传文件

文件上传无法使用knockoutjs。我试过下面的代码但没有工作。请指出我做错的地方。这是我的文件控件和按钮。我无法将选定的文件从客户端发送到服务器。请建议最好的方法是什么。Uploadko.bindingHandlers.file={init:function(element,valueAccessor){alert('init');$(element).change(function(){varfile=this.files[0];if(ko.isObservable(valueAccessor())){valueAccessor()(file);}});}

javascript - 在 knockout.js 中嵌套 foreach

我似乎无法让嵌套的foreach工作。JS代码为:$(document).ready(function(){functionchartValueViewModel(date,price){this.date=date;this.price=price;}functionchartViewModel(id,name,lineType,values){this.id=id;this.name=name;this.lineType=lineType;this.values=ko.observableArray(values);}functionliveCurveViewModel(){thi

javascript - 如何在可观察数组中 knockout 可观察对象

我想实现一个可观察数组,并且在该数组内应该有可观察对象(JS对象)。在View中,我正在迭代这个数组并获取对象并显示对象属性。假设有一个对象,如下所示,{"name":"john","age":21,"address":"No25"}想象一下可观察数组由上面的对象组成。然后我想更改特定对象的单个属性(例如名称),并且需要在View中查看更改。我如何使用knockout来做到这一点?谢谢。 最佳答案 如果您在viewModel中设置用户并将其映射到knockoutmapping你应该得到想要的结果。像这样的东西:myObservabl

javascript - knockout 最佳实践。如果或可见

在这种情况下,我正在寻找knockoutif或可见的最佳做法:......如果$root.obsVar()未定义,将抛出错误。如果将visible更改为if,问题将会丢失,但它需要重写html。如果div中有很多murkup,则需要花费很多时间。是否有任何理由将$root.obsVar().someField更改为始终返回正确值或未定义的$root.getSomeFieldValue?或者也许还有其他技术可以避免开销和避免错误。 最佳答案 这真的取决于场景。来自docs:ifplaysasimilarroletothevisible

javascript - 绑定(bind)中的 Knockout 2.0 参数顺序不正确?

使用此数据绑定(bind)的Knockout2.0:data-bind="click:$root.deleteSomeEntity.bind($data,$parent)"在KnockoutviewmodelJavaScript中的第一个参数self.deleteSomeEntity=function(data,parent){//performdeletion}似乎是父级而不是数据。这种行为是否有原因或我遗漏了什么? 最佳答案 当您调用bind时,第一个参数将是this的值。因此,在您的调用中,this将是$data,第一个参数将

javascript - knockout : How to filter observableArray by param

这是代码:http://jsfiddle.net/Gr3fT/1/如何通过role属性过滤personRoles?每个列表必须只有自己的role项。谢谢。 最佳答案 此功能有效(基于http://knockoutjs.com/examples/animatedTransitions.html:)get:function(role){returnko.dependentObservable(function(){returnko.utils.arrayFilter(this.personRoles(),function(item){r

javascript - Knockout.js - 如何在计算的可观察对象中获取可观察属性的值?

我有以下Knockout.js对象:varviewModel={description:ko.observable(""),Name:ko.observable(""),productid:ko.observable(""),productmodel:ko.observable(""),productnumber:ko.observable(""),text_relevance:ko.observable(""),mydunamicfield:ko.computed(function(){return"bq=(and"+((this.description=="")?"":("desc

c# - 如何在 ASP.NET MVC 项目中生成用于 knockout 的客户端 View 模型?

我目前正在研究ASP.NETMVC解决方案,并且最近引入了Knockout(一个MVVMJS库)和Wijmo(一组jQueryUI小部件)。随着Knockout的引入,我还需要在客户端拥有模型,因此为此我正在序列化C#ViewModel并使用data-model="@Model.ToJson()将其附加到View“。这允许我从JS检索模型并将一些客户端的爱应用到一切。但是,knockout需要所有内容都是可观察的,因此我需要声明一个单独的客户端ViewModel并映射来自数据模型对象的所有内容。这感觉非常像重复工作,我想以某种方式避免它。我希望有人可以分享一种工具或技术,让我可以直接从

javascript - Knockout.js "select all"复选框

我刚刚开始使用Knockout.js,它看起来真的很酷。我有一个网格。该网格有一列顶部有一个复选框,用于“选择所有”元素,以及取消选择。标准网格行为。到目前为止,这是我的代码:Javascript://Definea"banner"classfunctionbanner(inventory,name,artType,artSize){return{isSelected:ko.observable(false),inventory:ko.observable(inventory),name:ko.observable(name),artType:ko.observable(artType