仅显示mysql数据库中的格式化文本

时间:2013-07-30 06:07:40

标签: javascript

我有一个<a>从mysql数据库字段中提取信息并将其显示在bootstrap模式中的div中。这也打开了模式。

echo "<td> <a href='#myModal' class='view' role='button' data-toggle='modal' data-id='".$row['id']."' data-assignment='".$row['assignment']."'>View </a> </td>";

执行此操作的JavaScript是:

<script type="text/javascript">

    $(document).ready(function(){

     $('a.view').click(function(){
       var id = $(this).data('id'); 
       var assignment = $(this).data('assignment'); 

       $('#id').val(id);
       $('#assignment').innerHTML(assignment);
        });

     });

</script>

我目前有两个问题,

1。 innerHTML无法正常工作,这意味着div中的模式中没有显示任何内容。但是,如果我将其切换到$('#assignment').val(assignment);并将div更改为模式中的textarea,则会显示文本格式,这会导致我遇到第二个问题。

2. 分配字段是mysql数据库中的blob,包含html格式的文本。 (即<p><b>Demo</b>Text here showing the formatted <i>text</i>)当它需要显示如下:

演示此处的文字显示格式化的文字

所以我的两个问题是:

如何在div中显示值?

如何使文字显示正常?

3 个答案:

答案 0 :(得分:0)

$('#assignment').innerHTML(assignment);  //wrong

应该像.text(),设置匹配元素的文本内容。

$('#assignment').text(assignment);

.html()函数可以使用HTML字符串,并有效地修改.innerHTML属性。

$('#assignment').html(assignment);

答案 1 :(得分:0)

试试这个:

$('#assignment').html(assignment);

答案 2 :(得分:0)

如果您打算更好地添加子元素

 $('#assignment').append(assignment)