2017-06-12 1 views
0

改行を含む長い文字列を取得したいのですが、\n, \r\nのような一般的なコマンドでは機能しません。また、改行のためのHTMLタグではありません。 私はASP-FrameworkとJS-Scriptingを初めて使用しているため、私自身は解決策を見つけることができません。改行は、最後の関数で生成されなければならないJS関数の新しい行

<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <title>DataGen App</title> 
</head> 
<body> 

    <div> 
    <h3>Mitarbeiter</h3> 
    </div> 
    <div> 
    <input type="button" value="generateSQL" onclick="generate();" /> 
    <p id="ma" /> 
    </div> 

    <script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-2.0.3.min.js"></script> 
    <script> 
     var uri = 'api/mitarbeiter'; 

     function formatItem(item) { 
      return 'INSERT INTO Mitarbeiter VALUES (' + item.Id + ', ' + item.Name + ', ' + item.Vorname + ', ' + item.Bereich + ');'; 
     } 

     function generate() { 
      var str = ""; 
      $.getJSON(uri) 
       .done(function (data) { 
        $.each(data, function (key, item) { 
         str = str + "\n" + formatItem(item); 
         $('#ma').text(str); 
        }); 
       }) 
     } 

    </script> 
</body> 
</html> 

:今私は、インターネット上の右のヒントを見つけることができませんでしたまであなたは私の特定のコードを見ているとき、あなたは私を助けることができます。

ありがとう、すてきな週があります!

+0

のjQuery 2.0.3は時代遅れです。改行の問題にhttps://docs.microsoft.com/en-us/aspnet/ajax/cdn/overview#jQuery_Releases_on_the_CDN_0 – GottZ

+0

:「
」タグを使用する必要があります。 '.text()'はプレーンテキストに変換します。そこにいくつかのHTMLを投げたいのであれば、 '.text'を' .html'に変更するか、より高度なものを行う必要があります。ちょうどあなたが知っている:もしあなたが '.html'を使うなら'おそらくxssを防ぐために 'formatItem'をフィルタリングするべきです – GottZ

+0

ねえ、どうもありがとう。 htmlテキストに変換すると便利でした。ありがとう! – dafna

答えて

0

<br>タグを使用できます。 <br>タグは1回の改行を挿入します。

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<!DOCTYPE html> 
 
<html xmlns="http://www.w3.org/1999/xhtml"> 
 
<head> 
 
    <title>DataGen App</title> 
 
</head> 
 
<body> 
 

 
    <div> 
 
    <h3>Mitarbeiter</h3> 
 
    </div> 
 
    <div> 
 
    <input type="button" value="generateSQL" onclick="generate();" /> 
 
    <p id="ma" /> 
 
    </div> 
 

 
    <script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-2.0.3.min.js"></script> 
 
    <script> 
 
     var uri = 'api/mitarbeiter'; 
 

 
     function formatItem(item) { 
 
      return 'INSERT INTO Mitarbeiter VALUES (' + item.Id + ', ' + item.Name + ', ' + item.Vorname + ', ' + item.Bereich + ');'; 
 
     } 
 

 
     function generate() { 
 
      var str = ""; 
 
      $.getJSON(uri) 
 
       .done(function (data) { 
 
       console.log(data); 
 
        $.each(data, function (key, item) { 
 
         str = str + "<br>" + formatItem(item); 
 
         $('#ma').html(str); 
 
        }); 
 
       }) 
 
     } 
 

 
    </script> 
 
</body> 
 
</html>