问题标签 [knockout-binding-handlers]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
400 浏览

jquery - 每当对另一个剔除绑定进行更改时,更新选择-选择剔除绑定

我有以下情况:

我有一个包含多个选择输入框(chosen.jquery)的表格。

注意chosenSelectedOptions第一个选择输入中的绑定。这是必然的SelectedFields。这是一个数组,这是我希望作为第二个选择输入的可能选项的确切数组。这可以通过注意chosen第二个选择输入的绑定来看出:SelectedFields.

在第二个选择输入中选择的字段应添加到绑定中调用SelectedReadOnlyFields和说明的新数组中。chosenSelectedOptions

问题

由于我对 KnockoutJS 还很陌生,所以我不确定从这里去哪里,或者如何正确设置它。每当SelectedFields数组更改时,我希望更新第二个选择输入中的可能选项,但我无法让它工作。我读过一些帖子,其中提到了以下触发所选选择输入 ( $(element).trigger('chosen:updated')) 更新的方法,但由于我在第二个选择输入上没有 id,因此我无法找到该元素。

额外的

主题绑定:

0 投票
2 回答
6615 浏览

javascript - 键入时格式化电话号码 (xxx) xxx - xxxx

我正在编写一个自定义格式bindingHandlerknockout以便在他们键入时以以下格式格式化(美国)电话号码。

(xxx) xxx - xxxx

HTML 代码...

和绑定处理程序...

以下代码按预期工作。这种方法的一个流程是使用删除电话号码backspace。一旦它删除最后四位数字并点击-它就不能删除-也不,( )因为我是根据长度动态添加-和。( )我可以使用箭头键或在这些符号之前单击并开始删除,或者我可以突出显示文本框并一次删除所有内容。但我需要能够通过退格删除符号或动态模拟并从代码中删除它。

关于如何解决此问题的任何建议?

更新

这是JSFIDDLE。我对这个小提琴的唯一问题是它不会更新值变化的值。仅当您按输入或离开文本框时才会更新。不知道如果我错过了其他任何东西......

我已更新我的逻辑以解决我遇到的问题,该问题已修复。但我注意到这两种逻辑还有一个问题。

如果我有电话号码

(123) 456-7890

如果我从区号中删除 1,则光标不会停留在同一位置(在 2 之前)。它移动到字符串的末尾,所有内容都向下移动一个数字。

0 投票
1 回答
23 浏览

javascript - 在淘汰赛绑定(foreach)中传递未知函数 - 有可能吗?

举个简单的例子,假设这是我的中继器:

我希望使用此代码的人能够传递他们选择的函数,而不是在将运行 onclick 的模型本身中传递 - 这可能吗?有没有办法将它分配给模型并将其设置为点击绑定?我似乎无法弄清楚这个...

0 投票
2 回答
911 浏览

javascript - 淘汰数据绑定jquery数据表添加一行

我正在研究一本书籍淘汰蓝图,其中作者展示了一种自定义绑定 jquery 数据表的方法。但是我在添加新行时遇到了一些困难。当您填写表格并点击添加数据表变为空时,这是小提琴。http://jsfiddle.net/LkqTU/33382/

我相信数据表没有成功销毁和重新创建。

这是自定义绑定。

您可以运行下面的整个代码段,或者使用上面的小提琴。谢谢

0 投票
1 回答
128 浏览

knockout.js - Knockout JS:计算的 observable 更新失败

我无法使用计算或 pureComputed ko 函数让我的剔除文本可观察到更新。

绑定正在工作,但是当我登录或注销时它不会更新。

每当我单击元素时,先前的敲除单击绑定都会更新,因此我知道userFunctions.isLoggedIn(sessions.user)它本身会根据登录/注销状态正确更新。

我想text:logOption根据状态用“登录”或“注销”进行更新,但似乎淘汰赛没有观察到userFunctions.isLoggedIn(sessions.user)计算变量中状态的变化?

0 投票
2 回答
256 浏览

symfony - Symfony Knockout:自定义绑定处理程序无法监听绑定处理程序

在我的 symfony 3 项目中,我制作了一个表单,我想使用 knockout.js 通过 ajax 提交该表单。但对于某些人来说,它使浏览器重定向到操作而不是通过 ajax 进行。

我想在名为的文件上使用 ajax 提交的表单app/FosUserBundle/views/Registration/register.html.twig是:

表单需要使用以下 knockout.js 自定义绑定处理程序:

此表单通过 pager.js 在此树枝模板上呈现:

这扩展了以下基本模板:

我通过以下 require.js 模板呈现所有必需的 javascript:

敲除和 pager.js 初始化的主视图模型具有以下内容:

你们有什么想法为什么formSubmitAjax不被调用?

0 投票
1 回答
239 浏览

jquery - 第一次加载后如何刷新 KnockoutJs 中的列表?

我正在显示数据列表,如下所示:

我是新来的 ko,希望在不重新加载页面的情况下刷新此列表,这是否可以通过淘汰赛实现?

我相信我可以使用类似的东西将新项目添加到列表中applyBindingsToNode,但是寻找一种刷新整个列表的方法,因为其中一个列上有一些刷新的数字。

0 投票
1 回答
33 浏览

knockout.js - 根据数组中的数字创建 HTML

第一次使用 KO,为这个听起来很愚蠢的问题道歉。

我有一个充满数据的数组。一个值是“星”,它是一个数字。在我的 HTML 中,我想基于该值创建 HTML 元素。例如,如果值为 4,我想要 4 个元素。如果值为 5,我想要 5 个元素,依此类推。我正确地拥有了其余的数据绑定,这是我不确定的一部分。

我想复制的元素是“fas fa-star”

数据

HTML

0 投票
1 回答
31 浏览

knockout.js - 如何禁用/启用嵌入在映射到淘汰赛可观察数组的表中的下拉列表

我想禁用/启用嵌入表格中的下拉列表,直到在前一个下拉列表中选择特定值。

这是我尝试过的似乎不起作用的方法:

请在此处找到相关的小提琴

简而言之,我希望启用每一行中的“统一类型”下拉菜单,以防在“性别”下拉菜单中选择了“女性”选项并且需要在所有其他情况下禁用它。

0 投票
1 回答
64 浏览

typescript - 为可观察数字绑定 foreach

我正在尝试为列表中的每个项目显示星星

我有一个在视频上获得 5 星分数的界面,我该如何计算该分数的计数?而不是为分数创建一个数组?