FastAdmin 在线命令生成时出错的分析
FastAdmin 在线命令生成时出错的分析
出错现象
版本环境
FastAdmin 版本:1.0.0.20180806_beta
在线命令插件版本:1.0.3
分析
2018-08-13 16:12
查看了 command.js 的源码,当点下执行时是通过 Fast.api.ajax 提交到 command/command/action/execute 进行执行的,但是不知道为什么,错误的信息是从 command/command/add 返回的。
$(document).on('click', ".btn-execute", function () {
var form = $(this).closest("form");
var textarea = $("textarea[rel=result]", form);
textarea.val('');
Fast.api.ajax({
url: "command/command/action/execute",
data: form.serialize(),
}, function (data, ret) {
textarea.val(data.result);
window.parent.$(".toolbar .btn-refresh").trigger('click');
return false;
}, function () {
window.parent.$(".toolbar .btn-refresh").trigger('click');
});
});
2018-08-14 08:53
求助无果,晚上再分析了,使用 Chrome 调试,虽然没有调试出什么结果,不过,发现有提交了两次。
然后发现问题所在,type 为 submit 时会提交两次,一次是 ajax,一次是提交到当前方法。
<button type="submit" class="btn btn-success btn-embossed btn-execute">{:__('立即执行')}</button>
解决
TODO
所有文章为原创,如非授权,请勿转载。
我们要多多支持有创造能力的人,因为那是我们所有人的希望。
同时我们也希望成为有创造能力的人,我们支持开源,同时也支持正版。
🎈数码荔技正版软件商店🎈
【正版】微软 Office 365
【正版】老牌文件对比工具 Beyond Compare
【正版】JetBrains Idea Java IDE
不断学习,慢慢进步,做时间的朋友。
注意力 > 时间 > 金钱。 -- 建伟 F4nniu
我们要多多支持有创造能力的人,因为那是我们所有人的希望。
同时我们也希望成为有创造能力的人,我们支持开源,同时也支持正版。
🎈数码荔技正版软件商店🎈
【正版】微软 Office 365
【正版】老牌文件对比工具 Beyond Compare
【正版】JetBrains Idea Java IDE
不断学习,慢慢进步,做时间的朋友。
注意力 > 时间 > 金钱。 -- 建伟 F4nniu