使用html代码设置输入值会使输入崩溃

时间:2014-11-12 10:50:40

标签: html

我正在尝试创建一个Web来更改数据库。问题是数据库中的某些属性是html格式,当我尝试将输入值设置为当前数据库属性时,它会崩溃。

我使用的代码如下:

$('#projectlist').DataTable( {
        "createdRow": function ( row, data, index ) {
            var ele = $('td', row).eq(1);
            var id_input = $('td', row).eq(0);
            id_input = id_input[0].innerHTML;
            ele[0].innerHTML = '<input id="'+id_input+'" value="'+ele[0].innerHTML+'" style="width:100%; height: 25px;">';
        },
        data: data
    } );

这只是将表中的第二个元素设置为一个值等于DB的输入。

但是当数据库有像这样的HTML代码时

  

text \“moretext

输入在\结束,后面的文本显示为常规文本而不是输入。

这是问题的image。正如你可以看到顶部输入是它应该如何显示而底部输入的文本没有留在输入框中,它只是像文本一样。

1 个答案:

答案 0 :(得分:0)

像k-nut说的那样,用jquery来解决这个问题。如果有人感兴趣,将代码更改为此可以解决问题:

    var ele = $('td', row).eq(1);
    var id_input = $('td', row).eq(0);
    var content=ele[0].innerHTML;
    id_input = id_input[0].innerHTML;
    ele[0].innerHTML = '<input id="'+id_input+'" style="width:100%; height: 25px;">';
    $( "#"+id_input ).val(content);