将jquery对象转换为html

时间:2013-08-06 22:18:51

标签: jquery html

我正在调用一个ajax函数,并且在回调时我得到了html数据。由于数据有不确定的html标签,我想删除那些标签并将其附加到我的表。为此我将我的html转换为jquery对象,删除所有标签,现在我想将其转换回html。我知道我已经使用了一个错误的for循环。如何转换jquery对象(在这种情况下,arr为html数据),我们将不胜感激。

$.ajax({
        type: "POST",
        cache: false,
        url: '@Url.Content("~/SyndromicQuery/QueryPeriod")',
        dataType: 'html',
        data: {
            selectedItem: selectedItem,
            startdate: startdate,
            enddate: enddate,
            queryid: queryid
        },
        success: function (data) {

            var jqObj = $.parseHTML(data)
            var arr = jqObj;
            arr.splice(6, 1);
            arr.splice(7, 1);
            arr.splice(9, 1);
            arr.splice(9, 7);
            arr.splice(0, 7)
            arr.splice(0, 1);
            arr.splice(1, 4);
            var test = '';

            for (var i = 0; i < arr.length; i++) {
                test += "" + arr[i].innerhtml + "";

                $('canvas').remove();

                //  $("#tblresult").append(html);
                $('#divtest').html(test)
                //  $("#divtest").empty().append(arr);

2 个答案:

答案 0 :(得分:0)

我建议您执行以下操作(除非我误解了您的代码):

success: function (data) {

    $('#divtest').html($(data).empty());

}

或者,例如,对于内部元素div.test#id

success: function (data) {
    var $data = $(data);
    $data.find("#divclear").remove();

    $('#divtest').html($data);
    // OR (depending on what's in 'data')
    $('#divtest').html($data.children());

}

答案 1 :(得分:0)

http://api.jquery.com/jQuery.parseHTML/ 将字符串转换为dom元素数组。

这绝对有效。 appendChild 是纯粹的javascript函数。 要将Jquery OBJECT转换为HTML,请执行此操作&gt;&gt; &GT;&GT;

var $data = $(document.createElement('div'))[0];
arr.forEach(function(v){$data.appendChild(v)});

&安培;在你的情况下

$('#divtest').html($data);

jsfiddle:http://jsfiddle.net/techsin/kjevr/3/