2017-02-14 11 views
0

ここに行きます。私は、テキストボックスに、この情報を配置する必要があるとして、このフォーマットを維持したいと思いますphpからjavascriptに渡す段落書式を保持する方法

1 Lumbar facet syndrome, bilateral 
2 Bilateral knee arthropathy 
3 Bilateral hip arthropathy 
4 Right shoulder arthropathy, posttraumatic, 
5 Chondromalacia of patella 
6 Diabetes mellitus with diabetic nephropathy 
7 Lower back pain 
8 OA 

:私はこのようになりますMySQLのテーブルデータから文字列リストを引っ張っています。

私が働いているプログラムには、システムがjavascriptをフォームページに挿入できるプラグインシステムがあります。プラグインは次のようになります

function newForm_javascript_onload() { 

    //This part grabs the data from the MySQL table. 
    $sql = "SELECT dictation FROM form_dictation WHERE id = ? ORDER BY date DESC LIMIT 1"; 
    $stmDia = array($id); 
    $list = sqlQuery($sql,$stmDia); 
    $list = $list['dictation']; 

    //Here I chop out the part of the text that I need for the text box 
    $diaBegin = strpos($list, "Active Problems") + 26; 
    $diaEnd = strpos($list, "Plan") - 4; 
    $diaLength = strlen($list); 
    $diaChop = ($diaEnd - $diaLength); 
    $diaNar = substr($list, $diaBegin, $diaChop); 


    //This is the part that gets injected into the page 
    echo " 
     var diagnoses = '$diaNar'; //This is where formatting breaks the code 

     //This part should populate the textarea 

     if(form_diagFac1){ 
      document.getElementById('form_diagFac1').value = diagnoses; 
     } 


    "; 


    }  

私はフォーラムを検索しようとしましたが、誰もこのような質問を投稿していません。 varが、私が試してみましたさ

は:

var diagnosis = escape('$diaNar'); //This is where php passes data to java 

私はそれは、段落として表示されるように、私はすべての書式を取り除くことができます知っています。

ただし、各行を読み取るループを作成する必要がありますか?

+0

最も簡単な方法ではなく、引用符のバッククォート(ES6テンプレート文字列)を用いることであろうが、それは古いブラウザで破る: 'VAR診断= \' $ diaNar \ ';' – pawel

答えて

0

お試しjson_encodeこれは、改行の代わりに文字列に "\ r \ n"を追加することなく追加し、変数を単一の文字列として出力します。

echo "var diagnoses = " . json_encode($diaNar) . "; 
関連する問題