2016-11-21 10 views
0

複数の行をコンマ区切りのデータに変換するJavaScript関数を含むWebページがあります。JavaScript関数はChromeとFirefoxではテキストエリアを変更しませんが、IEで動作します

<!DOCTYPE html> 
 
<html> 
 
<head> 
 
<meta charset="utf-8"> 
 
<title>Add case</title> 
 
<script type="text/javascript"> 
 
     function replaceSeperator() { 
 
      var incident_box = document.getElementById("TextBoxIncidentID") 
 
      var content = incident_box.value; 
 
      //incident_box.innerHTML = content.replace(/\n/g, ","); 
 
      var ctt = content.replace(/\n/g, ","); 
 
      var lastchar = ctt.substr(ctt.length - 1); 
 
      if (lastchar != ",") { 
 
       incident_box.innerHTML = ctt; 
 
      } else { 
 
       incident_box.innerHTML = ctt.substr(0,ctt.length - 1); 
 
      } 
 
     } 
 
    </script> 
 
</head> 
 
<body> 
 
\t <textarea name="TextBoxIncidentID" rows="2" cols="20" id="TextBoxIncidentID" textwrapping="Wrap" acceptreturn="true" onmouseout="replaceSeperator()" style="font-family:Calibri;font-size:Medium;height:60px;width:430px;margin-top: 5px;"></textarea> 
 
</body> 
 
</html>

それはIEで正常に動作します: The line break replaced to comma

しかし、ChromeとFirefoxで期待どおりに働いていません:ここにコードがある Line break replaced to comma at Dev Tool but it doesn't present on Chrome

い誰もそれを修正する方法を知っていますか? おかげ

+0

使用 '[値]マーン! innerHMTL –

答えて

0

valueプロパティを使用します。 innerHTMLは別の目的のためです。 TEXTAREAが終了タグを有し、内側のコンテンツがテキストエリアの値である:

<!DOCTYPE html> 
 
<html> 
 
<head> 
 
<meta charset="utf-8"> 
 
<title>Add case</title> 
 
<script type="text/javascript"> 
 
     function replaceSeperator() { 
 
      var incident_box = document.getElementById("TextBoxIncidentID") 
 
      var content = incident_box.value; 
 
      //incident_box.innerHTML = content.replace(/\n/g, ","); 
 
      var ctt = content.replace(/\n/g, ","); 
 
      var lastchar = ctt.substr(ctt.length - 1); 
 
      if (lastchar != ",") { 
 
       incident_box.value = ctt; 
 
      } else { 
 
       incident_box.value = ctt.substr(0,ctt.length - 1); 
 
      } 
 
     } 
 
    </script> 
 
</head> 
 
<body> 
 
\t <textarea name="TextBoxIncidentID" rows="2" cols="20" id="TextBoxIncidentID" textwrapping="Wrap" acceptreturn="true" onmouseout="replaceSeperator()" style="font-family:Calibri;font-size:Medium;height:60px;width:430px;margin-top: 5px;"></textarea> 
 
</body> 
 
</html>

+0

"値"は機能しません!どうもありがとうございます! – smallbone

-1

あなたは

var incident_box = document.getElementById("TextBoxIncidentID") 

の終わりに;含まれていない一部のブラウザでは他よりもこれにより寛容です。

関連する問題