gpt4 book ai didi

knockout.js - 将输入元素的值作为参数传递给 View 模型函数

转载 作者:行者123 更新时间:2023-12-01 10:34:58 25 4
gpt4 key购买 nike

input 控件的 value 传递给 View 模型函数的语法是什么(假设有一个)?在我的场景中,我对将输入值绑定(bind)到 View 模型上的属性不感兴趣。我只需要对输入控件中输入的值进行操作(基本上我是在遍历项目集合并过滤掉不包含输入文本的项目)。

<input data-bind="text: filterText($data), valueUpdate: 'afterkeydown'">

我试过 filterText($data, value) 但 Knockout 试图在 View 模型上找到 value 属性。我实际上需要输入控件的当前值。

这可能吗?

最佳答案

处理此用例的典型方法是使用 textInput与调用 filterText 的绑定(bind)值上的订阅绑定(bind)。

<input data-bind="textInput: filter">

在你的脚本中:

filter.subscribe(function(newValue) {
filterText(newValue)
});

你可以简化为:

filter.subscribe(filterText);

但是您可能仍然在想这个错误。您的过滤列表应该是一个计算值,它引用 textInput 绑定(bind)的 filter 值来计算过滤列表。

filteredList = ko.pureComputed(function() {
// return the list filtered by the bound filter() value
}, self);

然后您可以在任何需要过滤数据列表的地方使用filteredList()

关于knockout.js - 将输入元素的值作为参数传递给 View 模型函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37243278/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com