【发布时间】:2011-09-27 08:12:16
【问题描述】:
如何创建诸如:
- 有一些文字
- 我点击它
- 它转换为包含我单击的文本的输入。
【问题讨论】:
-
你的英语还不错。
标签: javascript text transform helpers textinput
如何创建诸如:
- 有一些文字
- 我点击它
- 它转换为包含我单击的文本的输入。
【问题讨论】:
标签: javascript text transform helpers textinput
这样的事情怎么样
HTML
<div onclick="transform(this)">Some text here</div>
Javascript
function transform(obj)
{
obj.innerHTML = "<input type='text' value='" + obj.innerHTML + "' />";
}
希望我正确理解了您的问题。
【讨论】:
<a href="#" onclick="var input = document.createElement('input'); input.setAttribute('value', this.firstChild.nodeValue); this.parentNode.replaceChild(input, this);">here is some text</a>. Click it.
除了<a>,您还可以使用<span> 或<div>,随心所欲。
【讨论】:
假设是 HTML:
<p id='changeMe'>This is some text</p>
你可以使用 jQuery:
$('#changeMe').click(function(){
$this = $(this)
$this.replaceWith( $('<input />').val( $this.text() ) )
})
在此处查看演示:http://jsfiddle.net/aXZ8e/
【讨论】:
$('<input />').attr({type:'text',name:'whatever'}).val( $this.text() ),或者像这样:$('<input type="text" name="whatever" />').val( $this.text()
$this.replaceWith( $('<input />').val($this.text()).attr('name', 'yourDesiredName') )
<span id="target" onclick="javascript:run();" >This is dummy text</span>
<script type="text/javascript">
function run() {
var span = document.getElementById( "target" );
var text = span.innerHTML;
var input = document.createElement("input");
input.type = "text";
input.value = text;
span.innerHTML = "";
span.appendChild( input );
span.onclick = null;
}
</script>
【讨论】: