我想用js实现这个效果,张三   这个是一个用户自己写的名字,然后直接点击这个文本修改,点击文本出现input输入框,values值保持为张三,就可以。
var mymes=myp.innerText;
var chang_mes="<input type='text' value='"+mymes+"' />";我自己写的点击一次文本可以出现输入框,但是多次点击出现各种问题,,还有,上面出现input的时候,value获取当前文本值,红色的是什么意思啊,我知道这样写才可以获取到文本值,但是这样写是什么意思哦,,,,没见过
value="mymes"
 这样写好像不能获取到mymes的值,直接就是mymesJavaScriptinput

解决方案 »

  1.   

    var mymes=myp.innerText;
    var chang_mes="<input type='text' value='"+mymes+"' />";
    mymes是个变量名,你当然不能直接“mymes”了,这样不成了字符串mymes了么,chang_mes="<input type='text' value='"+mymes+"' />";这居是用了字符串的+运算符,将前面的<input type='text' value='以及mymes的值,以及后面的' />连接起来拼接成字符串赋值给chang_mes
      

  2.   

    谢谢,后面的问题我懂了,。,那么如何实现点击变为修改呢,我自己写的<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    <script language="javascript" type="text/javascript">
    function changevalue(){
    var myp=document.getElementById("myp");
    var mymes=myp.innerTeHTML;
    var chang_mes="<input type='text' value='"+mymes+"' />";
    myp.innerHTML=chang_mes;
    }
    </script>
    </head><body>
    <div id="myp" onclick="changevalue()">成都市高新区</div>
    </body>
    </html>
    多次点击出现问题,,
      

  3.   


    function changevalue(){
    var myp=document.getElementById("myp");
    var mymes=myp.innerHTML;
    var chang_mes="<input type='text' value='"+mymes+"' />";
    myp.innerHTML=chang_mes;
    }