使用jquery修改$ .get数据

时间:2013-12-15 19:20:52

标签: jquery get

我想要做的是使用$ .get从其他来源提取数据。随着现在的varurend项目在变量“数据”中我想访问一个节点并坚持我自己的一些html里面。在这样做之后,我想将现已“完成”的数据存储在可以在屏幕上显示的变量中。

$.get("view/contractCreator.html", function(puzzel){

        $.get("controller/controller.php", { command: "contractCreatorDisplay"},function(data){

            var contents            =       "";
            data                    =       jQuery.parseJSON(data);
            var contractTypeLen     =       data.length;
            for(var i = 0; i < contractTypeLen; i++){
                contents    +=      "<div class='actionBox' data-contractType='"+data[i].room_type_id+"' style='width:300px;height:350px;background-color:rgba(101, 201, 168, 0.9);'>";
                contents    +=      "<div class='actionBox' data-input='title' data-placeholder='title' style='width:300px;height:50px;background-color:rgba(82,131,158,0.9); clear:both;'><input type='text' id='title' class='inputFill' placeholder='title' value='"+data[i].room_type_name+"'></div>";
                contents    +=      "<div class='actionBox' data-input='description' data-placeholder='desciption' style='width:300px;height:110px;background-color:rgba(74,150,129,0.9); clear:both;'><input type='text' id='description' class='inputFill' placeholder='title' value='"+data[i].room_type_desc+"'></div>";
                var contractsLen = data[i].rent_contracts.length;
                for(var x = 0; x < contractsLen; x++){
                    contents    +=      "<div class='actionBox' data-contract_id='"+data[i].rent_contracts[x].rent_contract_id+"' data-pdfId='"+data[i].rent_contracts[x].pdf_id+"' data-duration='"+data[i].rent_contracts[x].rent_contract_duration+"' data-deposit='"+data[i].rent_contracts[x].rent_contract_deposit+"' data-rent='"+data[i].rent_contracts[x].rent_contract_rent+"' style='width:149px;height:94px;background-color:rgba(82,131,158,0.9);border-right: 1px solid rgba(150,229,210,0.9);border-bottom: 1px solid rgba(150,229,210,0.9);'><img src='img/addWhite.png' style='height:40px;margin-top:15px;'/><p style='margin-top:10px;font-size:12px;color:white;'>not done</p></div>";
                }
                contents    += "</div>";
            }

            var completePuzzel = $(puzzel).$('#contractArea').html(contents);
            console.log(completePuzzel);
            transition(completePuzzel);
        });
    });

这行是我想从其他来源插入数据的地方。

 var completePuzzel = $(puzzel).$('#contractArea').html(contents);

任何帮助都会很棒并且很感激!

1 个答案:

答案 0 :(得分:1)

如果我理解正确 - 你可以创建一个元素并在data中添加标记。然后使用jQuery选择器搜索该元素,像往常一样进行更改,然后将元素内容(已更改的数据)附加到页面上的任何位置。

这假设“node”表示DOM元素 - 这是正常意义。

var $elem = $(<div></div>)

$elem.html(data);

$toChange = ('.someSelector', $elem); //find .someSelector elem in your data
$.toChange.text('I got changed!'); //make your change

$('.someElemOnPage').append($elem.contents()); //append your changed "data" markup somewhere in the DOM.