【发布时间】:2015-05-17 06:42:54
【问题描述】:
我有一个问题,按钮点击在动态创建时没有触发,
我知道,here is the solution。
问题是这样的:
我正在使用 SignalR。启动聊天中心时,我必须声明单击事件(以调用某些中心方法)。请看下文
按钮点击在这种情况下有效
$(document).on('click', "#chatlist li .gobtn", function (e) {
var id = $(this).closest("li").data("message-id");
});
但我应该从这里调用它
$.connection.hub.start().done(function () {
//button click not fires here but it must be here
$('#chatlist li .gobtn').click(function () {
var id = $(this).closest("li").data("message-id");
chat.server.sendAnswer(id);
})
})
如果您有任何解决问题的想法,请提供帮助。
【问题讨论】:
-
不确定我明白了。在
done()函数中,您尝试调用对具有class 的按钮的点击 -.gobtn- 以传递message-id。如果按钮都使用相同的类,那么您触发点击的是哪个按钮?换句话说,当您在集线器启动时获得data属性时,$(this)是什么?集线器是否启动一次,作为初始化? -
@lesssugar 有许多具有相同类的按钮,这个事件可以为每个按钮触发。 $this 将被点击的按钮
-
@MuradQaribov 在我写的关于这个修复的问题的顶部。聊天中心完成后我需要声明事件
标签: javascript jquery asp.net signalr signalr-hub