0

我正在调用一个 ajax 函数,在回调时我正在获取 html 数据。由于数据具有不必要的 html 标签,我想删除这些标签并将其附加到我的表中。为此,我将我的 html 转换为 jquery 对象,删除了所有标签,现在我想将其转换回 html 。我知道我使用了错误的 for 循环。任何关于如何转换 jquery 对象的建议都将不胜感激,(在这种情况下为 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);
4

2 回答 2

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());

}
于 2013-08-06T22:26:38.923 回答
0

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

这绝对有效。appendChild是纯 JavaScript 函数。要将 Jquery OBJECT 转换为 HTML,请执行此操作 >> >>

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

&在你的情况下

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

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

于 2013-08-06T23:50:11.613 回答