修复fieldlist中textarea刷新不渲染的BUG

pull/276/head
Karson 2020-12-25 10:25:52 +08:00
parent 794f02c502
commit 6609ac1470
1 changed files with 13 additions and 10 deletions

View File

@ -335,7 +335,7 @@ define(['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'], functio
row = row ? row : {}; row = row ? row : {};
var vars = {index: index, name: name, data: data, row: row}; var vars = {index: index, name: name, data: data, row: row};
var html = template ? Template(template, vars) : Template.render(Form.config.fieldlisttpl, vars); var html = template ? Template(template, vars) : Template.render(Form.config.fieldlisttpl, vars);
$(html).insertBefore($(tagName + ":last", container)); $(html).attr("fieldlist-item", true).insertBefore($(tagName + ":last", container));
$(this).trigger("fa.event.appendfieldlist", $(this).closest(tagName).prev()); $(this).trigger("fa.event.appendfieldlist", $(this).closest(tagName).prev());
}); });
//移除控制 //移除控制
@ -362,18 +362,21 @@ define(['jquery', 'bootstrap', 'upload', 'validator', 'validator-lang'], functio
return true; return true;
} }
var template = $(this).data("template"); var template = $(this).data("template");
textarea.on("fa.event.refreshfieldlist", function () {
$("[fieldlist-item]", container).remove();
var json = {}; var json = {};
try { try {
json = JSON.parse(textarea.val()); json = JSON.parse($(this).val());
} catch (e) { } catch (e) {
} }
$.each(json, function (i, j) { $.each(json, function (i, j) {
$(".btn-append,.append", container).trigger('click', template ? j : { $(".btn-append,.append", container).trigger('click', template ? j : {
key: i, key: i, value: j
value: j
}); });
}); });
}); });
textarea.trigger("fa.event.refreshfieldlist");
});
}); });
} }
}, },