ZBLOG

$.ajax({ method: "POST", url: "../d/detail/keyInfo", data: { custId: custId }, success: function(result) { var jsonRes = JSON.parse(result); for (const item of jsonRes) { if (item.code === 'customerInfo...

要在现有的合同信息部分动态添加按钮,你可以在 loan.child 数组处理后,直接向其中的某个子元素(如一个特定的贷款信息项)插入你的按钮。由于你没有提供具体的 HTML 结构和目标位置,我将给出一个基本的方法来添加这些按钮。

假设我们想要在每个贷款信息项的末尾插入一些按钮,你可以使用 JavaScript 的 DOM 操作方法。以下是修改后的代码片段示例:

  1. $.ajax({
  2. method: "POST",
  3. url: "../d/detail/keyInfo",
  4. data: { custId: custId },
  5. success: function(result) {
  6. var jsonRes = JSON.parse(result);
  7. for (const item of jsonRes) {
  8. if (item.code === 'customerInfo') {
  9. // 客户信息展示
  10. }
  11. if (item.code === 'loan') { // 合同信息展示
  12. for (const loan of item.child) {
  13. const Index = loan.path.split('.')[1];
  14. let contractCode;
  15. me.overDueInfoIndex[loan.path] = Index;
  16. // ... (省略了之前的处理逻辑)
  17. if (child_ProductLine && !child_ProductLine.ifVirtual) {
  18. Object.assign(authMapLoan, { installmentLoanAmount: '' });
  19. const productLine = child_ProductLine.line;
  20. // 在这里,可以加入需要的按钮
  21. const buttonContainer = document.createElement('div'); // 创建一个容器
  22. const btn1 = document.createElement('button');
  23. btn1.innerText = '按钮1'; // 按钮文本
  24. btn1.onclick = function() {
  25. console.log('按钮1被点击');
  26. // 这里可以放置按钮的点击事件逻辑
  27. };
  28. const btn2 = document.createElement('button');
  29. btn2.innerText = '按钮2';
  30. btn2.onclick = function() {
  31. console.log('按钮2被点击');
  32. // 这里可以放置第二个按钮的点击事件逻辑
  33. };
  34. buttonContainer.appendChild(btn1);
  35. buttonContainer.appendChild(btn2);
  36. loan.child.push({
  37. code: 'buttons',
  38. value: buttonContainer.outerHTML // 将包含按钮的 HTML 添加到 loan.child 中
  39. });
  40. loan.child = loan.child.reduce((arr, child) => {
  41. if (child.code == 'overduePeriod') {
  42. if (child.title.includes("(") && child.title.includes(")")) {
  43. child.title = child.title.replace('(', '(').replace(')', ')');
  44. }
  45. }
  46. if (child.code == 'loanStatus' && child_OverduePeriod && child_OverduePeriod.value == '0') {
  47. child.valueMap[child.value] += `(${lang('NO_DEBT')})`;
  48. }
  49. if (child.code === 'contractCode') {
  50. contractCode = child.value;
  51. me.loanPathContractCodes[loan.path] = child.value;
  52. }
  53. if (child.code === 'allowCollNextPayment' && !child.value) return arr;
  54. const DEFAULT_SHOW = !(child.code in authMapLoan);
  55. const AUTH_SHOW = (child.code in authMapLoan) && canI(authMapLoan[child.code]);
  56. if (DEFAULT_SHOW || AUTH_SHOW) {
  57. arr.push(child);
  58. }
  59. return arr;
  60. }, []);
  61. }
  62. }
  63. }
  64. }
  65. me.keyInfo = JSON.parse(result)
  66. me.form.initForm(jsonRes)
  67. }
  68. });

注意事项:

  • 在创建按钮时,确保它们绑定了适当的事件。
  • 我们通过 outerHTML 将带有按钮的 DOM 元素添加到 loan.child 中。这可能会依赖于你的渲染方式,如果其他地方会解析这些内容,需要考虑如何处理。
  • 根据实际需要调整事件处理函数中的逻辑。
  • 如果你需要指定插入位置,请根据数据结构或业务需求确定具体如何操作。

这种方法能使你无须额外的 HTML 文件,就能实现所需功能。如果有更复杂或特定的位置要求,请补充说明。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=22069

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?