我想要做的是使用$ .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);
任何帮助都会很棒并且很感激!
答案 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.