object.wrap [ = sWrap ]
soft Default. Text is displayed with wordwrapping and submitted without carriage returns and line feeds.
hard Text is displayed with wordwrapping and submitted with soft returns and line feeds.
off Wordwrapping is disabled. The lines appear exactly as the user types them.
这不是说wrap="hard"之后,显式的加入硬回车吗?
当手工敲回车的时候,txtTest.value.indexOf("\n")和txtTest.value.indexOf("\r")就都能得到值。
为什么啊?
soft Default. Text is displayed with wordwrapping and submitted without carriage returns and line feeds.
hard Text is displayed with wordwrapping and submitted with soft returns and line feeds.
off Wordwrapping is disabled. The lines appear exactly as the user types them.
这不是说wrap="hard"之后,显式的加入硬回车吗?
当手工敲回车的时候,txtTest.value.indexOf("\n")和txtTest.value.indexOf("\r")就都能得到值。
为什么啊?
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>new page</title>
<script>
function a(){
alert(document.getElementById("t").innerText.replace("\r\n","$"));//回车换行换成"$"
}
</script>
</head>
<body>
<textarea id=t></textarea>
<input type=button onclick="a()" value="ok">
</body>
</html>
or
txtTest.innerText.indexOf("\n")
try it:<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>new page</title>
<script>
function a(){
alert(document.getElementById("t").innerText.split("\r\n").join("<回车换行>"));//回车换行换成"$"
}
</script>
</head>
<body>
<textarea id=t></textarea>
<input type=button onclick="a()" value="ok">
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>new page</title>
<script>
function a(){
var cols=document.getElementById("t").cols;
var str=document.getElementById("t").innerText;
var str1="";
var len=0;
for(var i=0;i<str.length;i++){
if(str.charCodeAt(i)>128){
if(len==19){
len=2;
str1+="\n";
}else{
len=len+2;
}
}else{
len=len+1;
}
str1+=str.charAt(i);
if(len==20){
str1+="\n";
len=0;
}
}
alert(str1);
}
</script>
</head>
<body onload="javascript:document.getElementById('t').innerText='中华人民shreh共和国1中华人民共srs和h国中华人htr民共和国'">
<textarea id=t></textarea>
<input type=button onclick="a()" value="ok">
</body>
</html>
我测过了,没问题啊,IE通过
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>new page</title>
<script>
function a(){
var cols=document.getElementById("t").cols;
var str=document.getElementById("t").innerText;
var str1="";
var len=0;
for(var i=0;i<str.length;i++){
if(str.charCodeAt(i)>128){
if(len==(cols-1)){
len=2;
str1+="\n";
}else{
len=len+2;
}
}else{
len=len+1;
}
str1+=str.charAt(i);
if(len==cols){
str1+="\n";
len=0;
}
}
alert(str1);
}
</script>
</head>
<body onload="javascript:document.getElementById('t').innerText='中华人民shreh共和国1中华人民共srs和h国中华人htr民共和国'">
<textarea id=t></textarea>
<input type=button onclick="a()" value="ok">
</body>
</html>
合着你的意思,还要判断是否为英文单词,是英文单词还不能分开
这么智能化,我也去开个永中好了
我要解决的就是这个问题,现在就差这一步了,我就是想知道textarea自动分行后是否会产生换行符,如果知道这个换行符,我的问题就解决了!
你的问题是什么,不妨说得详细明白些嘛!只要判断下是否为英文单词?还有其他的吗?
textarea自动换行的换行符是什么?
js中如何获得textarea自动换行的换行符?
就是这个意思阿。
你所做的处理和我的处理有点殊途同归,实际上我也是想取textarea具体每一行的内容,但要求的就是严格按照textarea里显示的情况一行一行的取出来。
1.textarea没有自动换行的换行符
2.严格按照textarea里显示的情况一行一行的取出来
这一点我的事例程序已经做到了:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>new page</title>
<script>
function a(){
var cols=document.getElementById("t").cols;
var str=document.getElementById("t").innerText;
var str1="";
var len=0;
for(var i=0;i<str.length;i++){
if(str.charCodeAt(i)>128){
if(len==(cols-1)){
len=2;
str1+="\n";
}else{
len=len+2;
}
}else{
len=len+1;
}
str1+=str.charAt(i);
if(len==cols){
str1+="\n";
len=0;
}
}
var strAry=str1.split("\n");
for(var i=0;i<strAry.length;i++){
alert("第"+(i+1)+"行:"+strAry[i]);
}
}
</script>
</head>
<body onload="javascript:document.getElementById('t').innerText='中华人民shreh共和国1中华人民共srs和h国中华人htr民共和国'">
<textarea id=t></textarea>
<input type=button onclick="a()" value="ok">
</body>
</html>
但我测了一下还是有一点问题,在<textarea id=t></textarea>里面随便输入一些英文字母测试再alert出来,就看出来了。
事实上textare默认cols=20,如果textarea的style="width:100%"
就会有问题。