FastAdmin append 按钮触发绑定事件
\public\assets\js\require-form.js
fieldlist: function (form) { //绑定fieldlist if ($(".fieldlist", form).size() > 0) { require(['dragsort', 'template'], function (undefined, Template) { //刷新隐藏textarea的值 var refresh = function (container) { var data = {}; var name = container.data("name"); var textarea = $("textarea[name='" + name + "']", form); var template = container.data("template"); $.each($("input,select,textarea", container).serializeArray(), function (i, j) { var reg = /\[(\w+)\]\[(\w+)\]$/g; var match = reg.exec(j.name); if (!match) return true; match[1] = "x" + parseInt(match[1]); if (typeof data[match[1]] == 'undefined') { data[match[1]] = {}; } data[match[1]][match[2]] = j.value; }); var result = template ? [] : {}; $.each(data, function (i, j) { if (j) { if (!template) { if (j.key != '') { result[j.key] = j.value; } } else { result.push(j); } } }); textarea.val(JSON.stringify(result)); }; //追加一行数据 var append = function (container, row, initial) { var tagName = container.data("tag") || (container.is("table") ? "tr" : "dd"); var index = container.data("index"); var name = container.data("name"); var template = container.data("template"); var data = container.data(); index = index ? parseInt(index) : 0; container.data("index", index + 1); row = row ? row : {}; row = typeof row.key === 'undefined' || typeof row.value === 'undefined' ? {key: '', value: row} : row; var options = container.data("fieldlist-options") || {}; var vars = {index: index, name: name, data: data, options: options, key: row.key, value: row.value, row: row.value}; var html = template ? Template(template, vars) : Template.render(Form.config.fieldlisttpl, vars); var obj = $(html); if ((options.deleteBtn === false || options.removeBtn === false) && initial) obj.find(".btn-remove").remove(); if (options.dragsortBtn === false && initial) obj.find(".btn-dragsort").remove(); if ((options.readonlyKey === true || options.disableKey === true) && initial) { obj.find("input[name$='[key]']").prop("readonly", true); } obj.attr("fieldlist-item", true); obj.insertAfter($(tagName + "[fieldlist-item]", container).length > 0 ? $(tagName + "[fieldlist-item]:last", container) : $(tagName + ":first", container)); if ($(".btn-append,.append", container).length > 0) { //兼容旧版本事件 $(".btn-append,.append", container).trigger("fa.event.appendfieldlist", obj); } else { //新版本事件 container.trigger("fa.event.appendfieldlist", obj); } Form.events.plupload($("form[role=form]")); return obj; };
在return前添加
Form.events.plupload($("form[role=form]"));
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!