我正在使用jquery和可编辑的插件。
工作王牌,我们非常高兴。
然而,我的老板想要一个链接/ div只是在可编辑div的一边说编辑。 单击它将弹出可编辑字段。
我用过:
$('#my_edit_button_id').click(function() { $('.my_editable_div').focus(); }); $('.my_editable_div').editable(/* my settings */); <div class="my_editable_div"></div> <div id="my_edit_button_id">Edit info</div>
类my_editable_div本身效果很好..但重点不在于鼠标。
之前有人碰到过这个吗? 我将继续搜索jQuery文档...
答案 0 :(得分:2)
我猜想这样做的最好方法是触发click
本身的div
处理程序,因为它似乎点击了导致它更改的可编辑元素,并且获得关注:
$('#my_edit_button_id').click(function() {
$('.my_editable_div').click();
});
$('.my_editable_div').editable(/* my settings */);
请注意,我不熟悉这个插件 - 这只是基于docs的合理猜测。
答案 1 :(得分:1)
为什么不使用这个插件?使用数据 - 属性技术https://github.com/tectual/jQuery-Editable在jquery editable
提供更多样本,轻松灵活使用它,您可以在点击编辑图标后调用可编辑的“点击”事件。或使用 data-for 属性。
答案 2 :(得分:0)
据我所知,div
代码无法有焦点,即使它们的内容可以编辑。
对不起,我的不好。刚发现你可以做到,但你需要设置`tabindex属性。试试这个:
$("#my_editable_div").attr("tabindex", -1).focus();
答案 3 :(得分:0)
默认情况下,div不会引起焦点事件,因此您需要将div
更改为a
标记或添加tabindex
属性
另一个故事是可编辑插件在点击时更改了DOM,因此您需要在点击后找到表单和输入框,并在其上激活焦点事件,而不是在div上