问题标签 [event-binding]
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.
javascript - 主干中绑定和开启之间的区别
Backbone.js 中的 bind() 和 on() 方法有什么区别
on() 的文档:backbone.js 中的方法文档
bind() 的文档:underscore.js 中的绑定方法文档
两者中的哪一个应该用于绑定对象的自定义事件?
使用示例:
knockout.js - 淘汰赛中的 lostfocus/onblur 事件
我想在绑定到input
. 这个函数应该在控件失去焦点时执行,即使没有输入任何内容。我试图更改事件绑定,但是当用户离开控件而不键入任何内容时它不会触发。我尝试了 mouseout 事件,但只有当用户在失去焦点后单击表单中的其他地方时才会触发 - 这不是我想要的。我希望在焦点从控件移开后立即触发,即使使用选项卡也是如此。
以下是我用于 mouseout 事件的代码:
有人可以帮忙吗?
events - 用主干监听事件的问题
我正在尝试在另一个对象中调用我的视图的“attachmentClicked”函数时进行监听。这是最初调用事件的类:
该对象在单击时调用attachmentClicked
,现在在另一个创建该对象的类中,我正在尝试侦听该事件。这是那堂课
所以发生的事情是,当这个类被创建时,它最终调用 renderFiles 从服务器获取文件,然后它为每个返回的模型创建一个视图,并以它作为参数调用 bindEvent。
然后 bindEvent 尝试监听新创建的项目的 attachmentClicked 方法并将其绑定到此类的 attachmentClicked 函数。但是,它不起作用。我尝试了几种方法,但不确定我的问题出在哪里。指导将不胜感激。
javascript - 使用 Kendo UI MVVM 的编程事件绑定不起作用
我正在尝试以编程方式将事件绑定到字段。“data-bind > events > change” 属性被添加到 DOM 元素中就好了。例如,这是我的脚本生成的 HTML:
但是,当我更改的值DropDownList
(例如)时,我收到以下错误:
TypeError: handler is not a function
path/to/app/Assets/Lib/kendo/src/js/kendo.web.js
Line 6923
我不知道发生了什么 -TypeOfLoss_updateSourceUsingValue
方法/属性确实存在于相应的视图模型(KendoDOMBinder._viewModel)中。
有任何想法吗?我正在使用 kendoui.web.2013.1.319。
c# - 为什么我的事件绑定失败?
我在 .aspx 页面上有一个链接按钮:
和页面后面的代码方法:
现在在运行时,我试图将事件绑定到函数内的链接按钮
但是当用户单击链接按钮时,它不会触发 Click 事件。不知道为什么。
请帮忙。
backbone.js - 如何测试是否在 Marionette.js 视图中设置了事件处理程序?
有一个Marionette.js视图充当登录表单。以下代码示例显示了相关代码部分,包括我已经修复的错误:
我注意到我的实施中有一个重大错误。在Reveal的回调函数closed
中,我决定直接关闭ItemView ,这是错误的,您可以在Marionette.js 的文档中阅读:
View 实现了一个 close 方法,由区域管理器自动调用。
错误修正:应该在regionclose()
上调用。我修复了这个错误。
现在我问自己如何才能真正编写一个涵盖该问题的测试。我使用Jasmine进行测试。我注意到在我错误地关闭ItemView并尝试重新提交表单后,不再调用onSignInFormSubmit
事件处理程序。
这是测试的初稿,不幸的是,错误修复也失败了:
也许还可以测试事件处理程序是否已注册,例如:
javascript - 将 jQuery 元素缓存传递给方法进行修改
问题小提琴:
点击查看(尝试 #1,使用委托事件)
点击查看(尝试#2,暴力破解方法如下)
点击查看(尝试#3,重构,有我要解决的问题)
在我正在处理的一个项目中,我正在探索一种相当动态的形式。除了一些静态元素外,还有各种交互元素,可以从隐藏的“模板”标记集中克隆,并添加到业务流程的各个点。
由于动态特性,我的可靠方法是在加载时设置 jQuery 元素缓存和事件处理程序,然后让用户做任何不可行的事情,因为这种动态特性;我发现我的动态添加的元素没有点击事件。
为了解决这个问题,我为每个有问题的脚本元素手动设置了重新绑定方法。重新绑定过程涉及 A) 重新获取给定描述性选择器的元素集,B) 删除该缓存上的任何现有事件,因为这些事件适用于不完整的元素集,以及 C) 调用绑定方法以应用新的事件到整个集合。
我得到的蛮力,工作方式是这样的:
自然地,我抓住了使用几乎完全相同的代码如此频繁地重复重新绑定的机会——重构的时机已经成熟。我们有一个公共库命名空间,我在其中添加了一个rebindEvents
函数......
在尝试调用它并运行该站点时,我立即将脚趾撞到了UncaughtTypeError: method click cannot be called on object undefined.
事实证明,似乎当我调用以下命令时:
$elementCache
没有被传递给方法rebindEvents
;当我在调试器中进入它时, $elementCache 里面rebindEvents
是undefined
.
一些方便的 StackOverflow 研究向我揭示了 JavaScript没有引用传递,至少在我熟悉的 C/C++/C# 意义上,这导致了我的两个问题:
A)我什至可以使用某种缓存引用传递重构此重新绑定功能吗?
B)如果我可以将我的重新绑定函数重构到我的公共命名空间,我将如何去做?
knockout.js - 使所有模板 foreach 绑定相同的 afterAdd 和 beforeRemove 事件函数
我需要一种方法让 Knockout 中的所有模板绑定相同的事件函数,例如:
data-binding - Kendo UI - 如何使用 Kendo MVVM 将选中的属性(属性)和处理复选框的单击事件绑定到 viewModel
我有一个看起来像这样的页面:
现在,绑定到 isChecked 字段的 MVVM 可以正常工作,但 clickHandler 永远不会被调用。如果我从数据绑定值中删除“checked: isChecked”绑定,那么 clickHandler 就会被调用。
我还尝试为复选框设置数据绑定,例如:
具有相同的行为。
这是设计使然,还是我配置错误?
谢谢
jquery - 这是将事件绑定到元素的正确方法
我读到事件可以绑定到一个元素
以另一种方式,
哪个是正确和最有效的方法?我正在使用导轨 3。