我有这段代码用于显示来自 MYSQL 的数据。我可以用 innerHTML 填充 div,但是当我使用 += 时,它会连接数组中的所有值。但我需要在 div 中创建新元素。我应该如何实现它?
jQuery(document).ready( function() {
$(".dropdown-item").click( function() {
var data = { action: 'get_data',
id: $(this).attr('id')
};
var parent= document.getElementById('info-block bg-grey m-b-2 p-a');
var name = document.getElementsByClassName('h4 underline-sm')[0];
var job = document.getElementsByClassName('m-b-1')[3];
var phone=document.getElementsByClassName('m-b-0')[6];
var image= document.getElementsByClassName('col-sm-4 text-xs-right m-b-1')[0];
jQuery.ajax({
cache: false,
url: '/wp-admin/admin-ajax.php',
data: data,
dataType:'JSON',
method: 'POST',
success: function(response) {
$.each(response, function(key, value){
//
name.innerHTML=response[key].firstname + ' ' + response[key].lastname;
job.innerHTML ='<b>' + $.trim(response[key].job_title) + ' <br>Tööruum: ' + $.trim(response[key].room) + '<br/><a href="mailto:' + $.trim(response[key].email) + '>"' + $.trim(response[key].email)+ '</a></b>' ;
phone.innerHTML=$.trim(response[key].phone) + ' ' + $.trim(response[key].cell_phone);
image.innerHTML='<img src="'+ $.trim(response[key].image) +'" class="rounded-circle lg" alt="">';
});
}
});
});
});
我正在从 HTML 添加一个 div,以显示我需要填充和创建循环的 div。
<div class="info-block bg-grey m-b-2 p-a-2"> <!--parent div-->
<h4 class="h4 underline-sm"> </h4> <!--response[key].firstname+ ' ' response[key].lastname-->
<div class="col-sm-8 text-xs-left">
<p class="m-b-1"></p> <!--'<b>' + $.trim(response[key].job_title) + ' <br>Tööruum: ' + $.trim(response[key].room) + '<br/><a href="mailto:' + $.trim(response[key].email) + '>"' + $.trim(response[key].email)+ '</a></b>' -->
<p class="m-b-0"></p> <!--response[key].phone + ' ' + response[key].cell_phone-->
</div>
<div class=" col-sm-4 text-xs-right m-b-1">
<img src="" class="rounded-circle lg" alt=""> <!--to src response[key].image-->
</div>
</div>
我不需要有人来做这项工作,但有人可能会解释如何使用 createelement,以及如何使用 DOM 元素创建子 div 到父 div。
感谢大家花时间思考我的问题。
最佳答案
你可以使用 jQuery append 函数来做到这一点,这是一个简单的例子:
$('.h4').append(response[key].firstname + ' ' + response[key].lastname);
或
$('.underline-sm').append(response[key].firstname + ' ' + response[key].lastname);
关于javascript - 如何用 javascript/jquery 填充 div 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46141009/