我正在使用jeditable
修改answers
的{{1}}个
我已经实现了整个逻辑成功期望通过ajax添加到dom的新答案
最初新添加的dom不可编辑,但在遵循一些解决方案后,它开始部分工作。
以下是我的代码段
question
启动$('.answer-section').delegate('.answer-descp', 'edit', function(){
$(this).editable('/answer/update', {
type : 'textarea',
event : 'edit',
}
});
});
事件以编辑内容的链接(它也是动态添加的dom的一部分)
edit
$('.answer-section').on('click', '.editans', function(e){
e.preventDefault(e);
$(this).parent().parent().prev().trigger('edit');
});
是answer-section
的类,其中包含所有答案,并在其中添加动态添加的新doms。
div
是answer-descp
的类,其中包含必须由div
编辑的文本。
当我们发布新答案(通过ajax)时,新的dom会添加jeditable
div,其中包含答案文字和一个新的answer-descp
类链接,点击后会修改此新添加的答案
我的问题是我必须单击编辑链接2次才能使其可编辑。我尝试了很多变化,但没有成功。 提前致谢
答案 0 :(得分:0)
旧线程,但我有同样的问题,并对这些未解答的问题感到恼火。 最后答案是如此清晰,但也许这可以节省一些奇怪的时间来敲打你的头脑。
第一次点击会将可编辑事件添加到第二次触发它的元素。
添加可编辑状态不需要点击事件,并且它会自行广告以触发它。
对我而言,将.editable()
添加到模态后直接调用它是有效的
即
$('#someID').contextmenu(function (e) {
e.preventDefault();
$('.someClass').modal('<span class="editable">'+someVal+'</span>'));
$('.editable').editable('some/URL/');
}
对于ajax,这可能应该在success
部分完成。