如何在生成的html代码中插入换行符 [英] How to insert linebreaks in generated html code

查看:129
本文介绍了如何在生成的html代码中插入换行符的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用codeigniter来生成一个html表格,以便插入到模板视图中。不幸的是,这是以一行很长的字符串出现的,例如:

 < table id =myDataTableclass = table table-bordered table-stripedstyle =clear:both>< tbody>< tr>< td> id< / td>< td>< a href =#id =id data-type =textdata-pk =2data-url =/ postdata-title =id> 2< / a>< / td>< / tr>< tr> ;< td>电子邮件< / td>< td>< a href =#id =emaildata-type =textdata-pk =2data-url =/ postdata -title = 电子邮件 > A@B.COM< / A>< / TD>< / TR><峰; br>< TR>< TD>注释和LT; / TD>< TD>< data-title =notesdata-type =textdata-pk =2data-url =/ postdata-title =notes>笔记go here< / a><< ; / TD>< / TR><峰; br> ... 

我希望它看起来更像:

 < tr> 
< td> field1< / td>
< td>< a href =#id =field1data-type =selectdata-pk =1data-value =data-original-title =Select field1 >< / A>< / TD>
< td>< span class =muted>选择,从js数组加载。自定义显示< / span>< / td>
< / tr>

< tr>
< td> field2< / td>
< td>< a href =#id =field2data-type =selectdata-pk =1data-value =data-original-title =Select field2 >< / A>< / TD>
< td>< span class =muted>选择,从js数组加载。自定义显示< / span>< / td>
< / tr>

以下是我的代码:

  $ string ='< table id =myDataTableclass =table table-bordered table-stripedstyle =clear:both>< tbody>'; 

foreach($ array as $ key => $ value){
$ string = $ string。< tr>< td> $ key< / td>;
$ element ='< td>< a href =#id ='。$ key。'data-type =textdata-pk ='。$ rowID。'data -url =/ postdata-title ='。$ key。'>'。$ value。'< / a>'。'< / td>< / tr>'。< BR>中;
$ string = $ string。$ element;
}

$ string = $ string。'< / tbody>< / table>';

如何解决这个问题?

可以添加换行符( \\\
)和制表符( \ t )添加到 $ string 变量中。



例如:

  $ string ='< table id =myDataTableclass =table table-bordered table-stripedstyle =clear:both> \\\
\t < ; TBODY> \\\
';
foreach($ array as $ key => $ value){
$ string = $ string。< tr> \\\
\t< td> $ key< / td> \ N;
$ element ='\t < a href =#id ='。$ key。'data-type =textdata-pk ='
。 $ rowID。'data-url =/ postdata-title ='。$ key。'>'。$ value。'< / a>'
。'< / td> \\\
< / TR> <峰; br> 中。
$ string = $ string。$ element;
}
$ string = $ string.'\\\
\t< / tbody> \\\
< / table>';


I am using codeigniter to generate an html table for insertion into a template view. Unfortunately this is coming out as a very long string on 1 line like:

<table id="myDataTable" class="table table-bordered table-striped" style="clear: both"><tbody><tr><td>id</td><td><a href="#" id="id" data-type="text" data-pk="2" data-url="/post" data-title="id">2</a></td></tr><tr><td>email</td><td><a href="#" id="email" data-type="text" data-pk="2" data-url="/post" data-title="email">A@B.COM</a></td></tr><br><tr><td>notes</td><td><a href="#" id="notes" data-type="text" data-pk="2" data-url="/post" data-title="notes">notes go here</a></td></tr><br> ...

I want it to look more like:

<tr>         
    <td>field1</td>
    <td><a href="#" id="field1" data-type="select" data-pk="1" data-value="" data-original-title="Select field1"></a></td>
    <td><span class="muted">Select, loaded from js array. Custom display</span></td>
</tr>

<tr>         
    <td>field2</td>
    <td><a href="#" id="field2" data-type="select" data-pk="1" data-value="" data-original-title="Select field2"></a></td>
    <td><span class="muted">Select, loaded from js array. Custom display</span></td>
</tr>

Here is my code:

$string='<table id="myDataTable" class="table table-bordered table-striped" style="clear: both"><tbody>';

foreach ($array as $key => $value) {
    $string=$string."<tr><td>$key</td>";  
    $element='<td><a href="#" id="'.$key.'" data-type="text" data-pk="'.$rowID.'" data-url="/post" data-title="'.$key.'">'.$value.'</a>'.'</td></tr>'."<br>";
    $string=$string.$element;
}

$string=$string.'</tbody></table>';

How can I fix this?

解决方案

You can add newlines (\n) and tabs (\t) to your $string variable.

E.g.:

$string='<table id="myDataTable" class="table table-bordered table-striped" style="clear: both">\n\t<tbody>\n';
foreach ($array as $key => $value) {
    $string = $string."<tr>\n\t<td>$key</td>\n";  
    $element = '\t<td><a href="#" id="'.$key.'" data-type="text" data-pk="'
            .$rowID.'" data-url="/post" data-title="'.$key.'">'.$value.'</a>'
            .'</td>\n</tr>'."<br>";
    $string = $string.$element;
}
$string=$string.'\n\t</tbody>\n</table>';

这篇关于如何在生成的html代码中插入换行符的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆