zoukankan      html  css  js  c++  java
  • form.submit 与 button.click

    最近在写一个后台,今天突然出现一个奇怪的问题

    当前端使用ajax后端post数据的时候,后端可以正常处理,也可以正常返回,但返回的时候不进入success部分,而是莫名其妙跳转到error部分

    ajax post的代码如下:

    function postdata() {
        var request = {
            key: 'value',
            key: value,
           
        };
        var encoded;
        encoded = $.toJSON(request);
        var jsonStr = encoded;
        var URL = '/api/task';
        $.ajax({
            url: URL,
            type: 'POST',
            data: jsonStr,
            dataType: 'json',
            contentType: 'application/json;charset=utf8',
            success: function (data) {
                var models = data;
                if (models.ok == true) {
                    alert("well done!");
                    window.location.href = "/task/list";
                } else {
                    alert("return error");
                    console.log(models);
                    alert(models.info);
                }
            },
            error: function (xhr, error, exception) {
                alert("erro: request failed");
            }
        });
    }

    前端调试信息

    确实cookie、host等信息

    开始怀疑后端处理有问题,后台使用Charles代理工具查看收发都正常,排除后端问题

    无奈本人刚开始接触前端,查不出原因,请教大神,设置断点,逐步排查,发现会有时请求成功

    查看页面的html代码,发现我在页面点击提交按钮使用的是button.click()

    $(document)
        .ready(function() {
             $(".primary.button").click(function() {
                  postdata()
               });
         })
     ;

    而我页面上的是在一个表单中,这种方法使得页面在提交post请求之后,没有等到数据返回,页面就刷新了一次,而设置断点的时候,恰巧就避开了这个坑

    修改代码

    $(document)
         .ready(function() {
               $("form").submit(function() 
                        postdata();
                        return false   //阻止自动刷新
                    });
          })

    果然可以,这里记录下,前端还不是很懂,还有很多要学习

  • 相关阅读:
    下载文件
    全局处理程序
    缩略图
    图片
    文件上传
    application用法
    多分辨率的支持
    适用于cocos2dx的编辑器:Texture,Tilemap,Particle,Action,Level etc
    cocos2dx下最大纹理大小取决于平台
    CCLabelTTF 如何支持换行符和换行
  • 原文地址:https://www.cnblogs.com/hoods/p/6426780.html
Copyright © 2011-2022 走看看