如果你希望将返回的数据放入一个单独的 div
中,并且每条数据展示为一个独立的模块,可以通过以下步骤实现:
创建一个容器
div
:在你的HTML中准备好一个用于展示客户信息的容器。动态生成模块:在成功获取数据后,使用JavaScript动态创建包含客户信息的模块,并将这些模块添加到这个容器中。
下面是示例代码,演示如何修改你的原有代码以支持这种功能:
<!-- HTML部分 -->
<div id="customerInfoContainer"></div>
dialog.alert(lang('alert'), dialogContent, function() {
var loanCodes = [];
var seen = new Set();
$('input[type=checkbox]:checked').each(function() {
var id = $(this).attr('id');
var value = $(this).val();
if (!seen.has(id)) {
seen.add(id);
loanCodes.push(value);
}
});
$.ajax({
url: `../d/exemptionReduction/selectInforList?loanCodes=${loanCodes}`,
contentType: 'application/json',
type: 'POST',
lang: defLanguage,
async: false,
success: function(res) {
var dialogData = JSON.parse(res);
if (dialogData.success) {
console.log(dialogData);
// 清空旧的数据
$('#customerInfoContainer').empty();
// 遍历返回的数据并动态创建模块
for (let i = 0; i < dialogData.data.length; i++) {
createCustomerInfoModule(dialogData.data[i]);
}
} else {
console.error('Failed to fetch data:', dialogData.message);
}
},
});
});
// 函数用于创建和添加客户信息模块
function createCustomerInfoModule(data) {
// 创建一个新的 div 模块来展示客户信息
const moduleDiv = $('<div class="customer-info-module"></div>'); // 使用 jQuery 创建 div
// 添加内容到模块中(根据需要修改样式和结构)
moduleDiv.append(`<h3>${data.name}</h3>`);
moduleDiv.append(`<p>Customer ID: ${data.customerId}</p>`);
moduleDiv.append(`<p>Ident: ${data.ident}</p>`);
moduleDiv.append(`<p>Loan Info Code: ${data.loanInfoCode}</p>`);
moduleDiv.append(`<p>Product Line: ${data.productLine}</p>`);
moduleDiv.append(`<p>Product Name: ${data.productName}</p>`);
moduleDiv.append(`<p>Loan Amount: ${data.loanAmount}</p>`);
moduleDiv.append(`<p>Contract Code: ${data.contractCode}</p>`);
// 可以继续添加其他字段...
// 将新创建的模块添加到 container 中
$('#customerInfoContainer').append(moduleDiv);
}
主要改动说明:
- HTML 部分:在页面上添加了一个
<div id="customerInfoContainer"></div>
来作为所有客户信息模块的容器。 - 清空旧数据:在获取新数据时,先清空该容器中的内容。
- 创建和插入新的模块:通过
createCustomerInfoModule
函数为每个客户创建新的div
模块,其中包含多个字段的信息。每次调用该函数都会生成一个新的模块并加入到#customerInfoContainer
中。
样式调整:
为了让这些信息看起来更美观,你可能还需要为 .customer-info-module
类添加一些CSS样式。例如:
.customer-info-module {
border: 1px solid #ccc;
padding: 10px;
margin-bottom: 15px;
}
这样会使得每个客户的信息看起来像是独立的卡片或块,更加易于阅读。根据具体需求,你可以进一步自定义样式和结构。
内容由零声教学AI助手提供,问题来源于学员提问