2010-09-13 76 views

回答

1

对于单行编辑,这里是一个简单的方法来使用CSS(以及一些用于IE7的JavaScript)进行内联编辑。在您的编辑模式页面中,使用文本框来显示文本,无论处于编辑模式还是视图模式。

这里的CSS制作表单域的样子纯文本,直到它悬停或聚焦:

.inContextEdit 
{ 
    border: solid 1px transparent; 
    margin: -2px -3px; 
    padding: 1px 2px; 
} 
.inContextEdit.focus, /* IE7 doesn't recognize :focus */ 
.inContextEdit:focus, 
.inContextEdit:hover 
{ 
    border-color: #ccc; 
} 

然后,一些JavaScript的IE7:

function focusInput(el) 
{ 
    el.className += " focus"; 
} 
function blurInput(el) 
{ 
    el.className = el.className.replace(/ *focus\b/g, ""); 
} 

这里是标记你将使用:

<input name="PageTitleInput" 
     value="Page title" 
     class="inContextEdit" 
    onfocus="focusInput(this);" 
    onblur="blurInput(this);" /> 

这个把戏将与<textarea>,而不是<input>,但您可能会更好地为您的多行文本找到现有的控件。 CSS可能会很棘手,隐藏在视图模式下的滚动条会很困难。有几个现有的控件与富文本功能。

0

将需要前端和后端工具。

我假设你正在谈论一个就地编辑器.. jquery有很多插件。

如果您需要富文本编辑器,请尝试使用TinyMCE。我用过它,也喜欢它。