Html 建议对web表单使用ContentEditable吗?

Html 建议对web表单使用ContentEditable吗?,html,contenteditable,inline-editing,Html,Contenteditable,Inline Editing,我想做一个表单类型的编辑器,编辑页面上的文本,并在每个字段的游标上提交更改。没有字体或样式的改变,只有笔直的方框 我看到了一些东西,例如,但是框和按“ok”提交的需要似乎有点没有吸引力和不直观 我想知道如何将contentEditable=“true”应用于每个元素。。我想这将实现同样的目标。因为它不是一个带有输入的表单,所以我可以想象,我必须通过javascript提交更改,但这对我的情况是可行的。(这似乎比担心每个元素的javascript更简单,比如JEditable或类似的东西 这是一个

我想做一个表单类型的编辑器,编辑页面上的文本,并在每个字段的游标上提交更改。没有字体或样式的改变,只有笔直的方框

我看到了一些东西,例如,但是框和按“ok”提交的需要似乎有点没有吸引力和不直观

我想知道如何将
contentEditable=“true”
应用于每个元素。。我想这将实现同样的目标。因为它不是一个带有输入的表单,所以我可以想象,我必须通过javascript提交更改,但这对我的情况是可行的。(这似乎比担心每个元素的javascript更简单,比如JEditable或类似的东西


这是一个合理的解决方案吗?我不担心网站这一特定部分的移动浏览器支持(希望iOS5会支持它或其他东西…。

代码方面,它需要如下所示:

顺便说一句,这是jQuery语法,适用于任何不应该知道这一点的人。
我希望这会有所帮助,因为我有点生疏,这个javascript可能需要一些修改。

ContentEditable可以正常工作,只是如果它不是一个输入框,它将不便于用户输入。最好的做法是在div中有一个浮动和隐藏的文本区域,然后将其移动到编辑位置,作为顶部元素ent。当然,您还需要将当前元素中的文本复制到文本框中,然后使其消失和/或在enter或类似操作时提交。可以将JedTable配置为没有按钮,但在Blur上提交。我可以这样做。我想知道是否有合理的方法让输入接管文本框的样式,以便它看起来天衣无缝。我可以用我想象中的jQuery获取特定的样式。我不确定
(event.which==13)
正在做什么?是的,这是可能的,但是像textareas这样的东西有时会非常复杂,但是你可以用javascript做完全相同的样式,就像用常规的css.event.这是一个JQuery编译,不同浏览器检测按键的不同方式合并在一起,键13是enter,你可以查找其他ke我在网上,很抱歉回复太晚了。
$(".YourElementClassHere").click(function () { 
   $("#YourTextArea").position($(this).position());
   $("#YourTextArea").css("display", "block");
});

$("#YourTextArea").click(function() {
  if ( event.which == 13 ) {
     $("#YourTextArea").css("display", "none");
     // Do something to commit this: $("#YourTextArea").text();
  }
});