gpt4 book ai didi

javascript - 如何触发 best_in_place 事件

转载 作者:数据小太阳 更新时间:2023-10-29 05:38:38 25 4
gpt4 key购买 nike

我查看了整个 Google 和 StackOverflow,并查看了 best_in_place javascript 代码,但无济于事。

我正在使用 best_in_place 通过文本区域编辑 Post 模型的属性,如下所示:

<%= best_in_place @post, :summary, 
{ :type => :textarea, :display_with => 'simple_format'} %>

我希望能够在按下 Enter/Return 时触发 best_in_place 的提交功能,除非它是用 shift 键按下的(这将允许回车),就像在可编辑区域外单击时一样。对于常规文本/输入,这是默认功能(减去回车部分)。然而,当使用文本区域时,它不是。

我从 here 中提取了一段不错的 jQuery处理识别何时按下 Enter with/without shift,但我不知道如何触发 best_in_place 来提交数据。

//Have to bind it to the activate function, or else 
//the element won't be in the DOM when it tries to identify it
$('.best_in_place').bind('best_in_place:activate', function(){
$(this).find('textarea').keyup(function(e) {
var $textarea = $(this);
if(e.keyCode == 13 && !e.shiftKey) {
e.preventDefault(); // Don't make a new line
// This line does weird things
$(this).parents('.best_in_place').trigger('best_in_place:update').trigger('best_in_place:deactivate');
}
});
});

我还有一些函数绑定(bind)到 best_in_place:update 函数,基本上是添加和删除样式类。使用上面的代码,当我在 best_in_place 文本区域中按下回车键时,我绑定(bind)到 best_in_place:update 函数的函数会触发,但是没有数据被提交到服务器,正如我在安慰。

TL;DR; 如何触发 best_in_place 提交/更新并在按下 Enter 键时停用,就像在可编辑区域外单击时一样?

最佳答案

$('正文').click();或许?没有使用过这个框架,但如果没有提交按钮并且失去对输入提交表单的关注,可能会起作用。

关于javascript - 如何触发 best_in_place 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22314923/

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