环境:VS2008 asp.net 
问题:我想获取可编辑的div中的每一行文本(文本是手动输入的,可以有很多行),然后用分号分开,请问该怎么写js代码?<div id="textBox_Expression" runat="server" contenteditable="true">
1111
2222
</div>
var str = $("#textBox_Expression").html(); //这可能会获得很多的网页元素,比如1111<div>2222</div>
var str = $("#textBox_Expression").text(); //获取的文本没有间隔,如11112222
我想得到 "1111;2222;3333"这样的字符串,请问该怎么写代码?JavaScriptdivHTML

解决方案 »

  1.   

    var xxx= $("#textBox_Expression").html()+","+$("#textBox_Expression").text();这样可以吗。。?我也不确定。。平时在C#里就是直接拼接的,菜鸟默默飘过。。
      

  2.   


    <script type="text/javascript">
    var textBox_Expression = document.getElementById("textBox_Expression");

    //split:根据换行符分割成字符串数组
    //join:用";"号连接字符串数组成一个字符串
    //substring:去除第一个分号
    var arr = textBox_Expression.innerHTML.split("\n").join(";").substring(1);
    document.write(arr);
    </script>
      

  3.   


    这不是我需要的啊!
    我是想获取div中的每一行文本,用分号分开的字符串。比如div中文本是
    1111
    2222
    3333
    则我需要得到"1111;2222;3333"这样的
      

  4.   


    innerHTML不行啊,div里面可能会有&nbsp;<div>之类的网页元素,而且他的换行符不是\n。我需要的是他的innerText
      

  5.   

    补充一下:如果不要最后一个分号,需要增加一句:arr = arr.substring(0, arr.length-1);
      

  6.   


    innerHTML不行啊,div里面可能会有&nbsp;<div>之类的网页元素,而且他的换行符不是\n。我需要的是他的innerText
    你总得把你DIV中的样式固定啊,不然JS代码怎么写?
      

  7.   


    innerHTML不行啊,div里面可能会有&nbsp;<div>之类的网页元素,而且他的换行符不是\n。我需要的是他的innerText
    你总得把你DIV中的样式固定啊,不然JS代码怎么写?因为div是可编辑的啊,如果粘贴的话,可能会把一些网页元素粘贴进去,比如文本是11111,但html可能是11&nbsp;11;所以就不想用html