【发布时间】:2016-11-23 08:35:24
【问题描述】:
我需要在点击时在输入和文本之间切换。类似于实时编辑。
我编写了这段代码,但它不起作用。
HTML:
<span class="editInput">Change the value on click</span>
<button>Click me</button>
JS:
var editmode = false;
$('button').on('click',function(){
if(editmode){
$('.editInput').replaceWith(function(){
return '<span class='+this.className+'>'+this.value+'</span>';
editmode = false;
})
}else {
$('.editInput').replaceWith(function(){
return '<input type="text" value='+this.text+' class='+this.className+'/>';
editmode = true;
})
}
})
有人可以帮我吗?
【问题讨论】:
-
与其替换它们,不如将它们都放在 DOM 中,然后隐藏其中一个。
-
如果你的应用可以是 HTML5,你可以使用 contenteditable 属性:html5doctor.com/the-contenteditable-attribute