1. 程式人生 > >Layui之Ajax提交表到總是不執行success ? ! 開發環境是 spring boot +mybatis + layui +thymeleaf

Layui之Ajax提交表到總是不執行success ? ! 開發環境是 spring boot +mybatis + layui +thymeleaf

博主的開發環境是 spring boot +mybatis + layui +thymeleaf

解決方案:
如果你的controller不打算返回模板的話就一定別忘了給它加上@Resopnsebody註解.
eg:

    @RequestMapping(value = "/sys_stuff/edit")
    public String edit(String id, Model model) {
        if (id == null) {
            Stuffs stuff = new Stuffs();
        }
        Stuffs stuff = qingYunService.findStuffById
(Integer.parseInt(id)); System.out.println(stuff.toString()); model.addAttribute("stuff", stuff); return "modifystuff"; } // @ResponseBody 要加上 @RequestMapping(value = "/sys_stuff/update") @ResponseBody public Result update(@RequestParam("name") String name , @RequestParam("id"
) String id, @RequestParam("lid") String lid, @RequestParam("mid") String mid) { Stuffs stuff = qingYunService.findStuffById(Integer.parseInt(id)); stuff.setName(name); System.out.println("次型別id=====>>>"+lid+"主型別id=====>>>"
+mid); LittleTypes littleType = qingYunService.findLittleTypeById(Integer.parseInt(lid)); System.out.println("初始littetype============>>>>>"+littleType.toString()); littleType.setMainTypes(qingYunService.findMainTypeById(Integer.parseInt(mid))); stuff.setLittleTypes(littleType); qingYunService.modifyStuff(stuff); Result result = Result.success(); return Result.success(); }

報錯資訊:

"Error resolving template "sys_stuff/update", template might not exist or might not be accessible by any of the configured Template Resolvers"

番外:

這個報錯資訊最讓人矇蔽的不是我看不懂意思,而是我壓根就沒有寫sys_stuff/update這個模板,還有我從未打算渲染這個模板!!

所以,這就讓我摸不著頭腦了……….

曾經我以為我Ajax(阿加克斯)有問題!然後把js改來改去也不成功!各位看官可以看看我的ajax麼!

<script th:src="@{/lib/layui/layui.js}"></script>
<script type="text/javascript" th:inline="javascript">

    layui.config({
        base: '/js/layui-modules/'
    }).use(['form', 'layer', 'laypage', 'tools'], function () {
        var $ = layui.jquery,
            form = layui.form(),
            laypage = layui.laypage,
            tools = layui.tools;
        //監聽提交

        //監聽提交  data是什麼  傳送到後臺?????
        form.on('submit(btnSave)', function(data) {
            //roleId在這裡沒多少用
            $.ajax({
                type: 'POST',
                url: /*[[@{/sys_stuff/update}]]*/'',
                dataType:'json',
                data: data.field,
                async: true,
                success: function (result) {
                    console.log(result.code)
                    //媽的 沒加@Responsebody註解
                    if (result.code == 0) {
                        layer.msg('success:儲存成功', {icon: 1, time:1000});
                        setTimeout(function(){
                            top.layer.closeAll('iframe');
                            //重新整理父親的頁面
                            parent.refreshIframe();
                        },800);
                    } else {
                        consol.alert(result.code);
                        layer.msg('eles:儲存失敗!'+result.msg, {icon: 2, time:1000});
                    }
                },
                error: function (result, type) {
                    layer.msg('error:儲存失敗!', { icon: 2, time:1000 });
                }
            });
            console.log(data.field)
            return false;
        });

    });

</script>