触发 jQuery UI 事件:ui-selectable

发布于 2024-10-29 06:38:10 字数 999 浏览 1 评论 0 原文

编辑:

jQuery UI 可选择小部件内置了一个回调,stop,我需要知道如何以编程方式触发此事件。


(措辞不佳) 我已将事件侦听器附加到 jQuery UI Selectable Widget。如何以编程方式触发 stop 事件?


Ex可选:

$("table").selectable({
  filter: "tr",
  stop: function(){
    //do stuff
  }
});

// Various attempts at triggering the stop event
// one
$("table .ui-selected").click();

// two
$("table .ui-selected").select();

// three
$("table .ui-selected").trigger("click");

// shot in the dark 1
$("table").selectable('widget').trigger('stop');

// Shot in the dark 2
$("table").trigger('stop');

// really long shot in the dark
$("table").selectable('widget').call('stop');

进一步尝试

// selectablestop event

$("#table").selectable('widget').trigger('selectablestop');

$("#table .ui-selected").trigger('selectablestop');

EDIT:

the jQuery UI selectable widget has a callback built into it, stop, I need to know how to trigger this event programmatically.


(this was poorly worded)
I've attached an event listener to the jQuery UI Selectable Widget. How can I programmatically trigger the stop event?


Ex Selectable:

$("table").selectable({
  filter: "tr",
  stop: function(){
    //do stuff
  }
});

// Various attempts at triggering the stop event
// one
$("table .ui-selected").click();

// two
$("table .ui-selected").select();

// three
$("table .ui-selected").trigger("click");

// shot in the dark 1
$("table").selectable('widget').trigger('stop');

// Shot in the dark 2
$("table").trigger('stop');

// really long shot in the dark
$("table").selectable('widget').call('stop');

Further Attempts

// selectablestop event

$("#table").selectable('widget').trigger('selectablestop');

$("#table .ui-selected").trigger('selectablestop');

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

梦幻的味道 2024-11-05 06:38:10

如果您想在控件之外触发事件,只需调用.trigger()即可。这假设您在选项中使用 .bind() 而不是匿名 stop:function()

$("#selectable").selectable({});
$("#selectable").bind("selectablestop", function(event) {
    $("body").append("<h1>did selectablestop</h1>");
});
$(":button").click(function() {
    $('#selectable').trigger('selectablestop');
});

jsfiddle 上的代码示例。

编辑

另一种方法是检索 stop: 选项值(这将是函数)

var s = $('#selectable').selectable( "option" , "stop"); 
s(); //call the function.

jsfiddle

If you want to trigger the event outside of the control you can simply call .trigger(). This assumes you are using the .bind() and not the anonymous stop:function() in options.

$("#selectable").selectable({});
$("#selectable").bind("selectablestop", function(event) {
    $("body").append("<h1>did selectablestop</h1>");
});
$(":button").click(function() {
    $('#selectable').trigger('selectablestop');
});

Code example on jsfiddle.

Edit

Another way would be to retrieve the stop: option value (which would be the function)

var s = $('#selectable').selectable( "option" , "stop"); 
s(); //call the function.

Code example on jsfiddle.

我ぃ本無心為│何有愛 2024-11-05 06:38:10

我最终做到了这一点,发现于 如何使用 jQuery UI 以编程方式选择可选择项?< /a>

 $('#selectable').data("selectable")._mouseStop(null);

这将触发鼠标停止事件并在可选对象上执行绑定的停止函数。如果有一种方法可以以更优雅的方式触发停止,我很乐意看到。

I ended up doing this, found at How to programmatically select selectables with jQuery UI?

 $('#selectable').data("selectable")._mouseStop(null);

This will trigger the mouse stop event and execute the binded stop function on the selectable. If there's a way to trigger the stop in a more elegant way, I would love to see.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文