Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
293 views
in Technique[技术] by (71.8m points)

jquery - Ajax submit form datatype issue

I am having some problems about using ajax to submit a html input form, and it seems like something is wrong with the datatype.

The background:

  1. sending an input form from app engine to aws
  2. creating a pdf file on aws, saving it on s3, and sending back the hyperlink to app engine
  3. on app engine side, generating a html page with the hyperlink
  4. if the ajax call is successful, redirect to the page created on Step 3

Input form:

<form id="pdf_post">
    <table class="getpdf popup">
        <!-- contents include 1. string type html table and jqplots -->
    </table>
</form>

Ajax call:

    $(document).ajaxStart(function(){
        alert('start');
    });

    $.ajax({
        type: "post",
        url: "/pdf.html",
        data: $('#pdf_post').serialize(),
        dataType: "html",
        success: function () {
            alert('success');
            window.location = "/pdf.html";
        },
        error: function (data) {
            console.log(data)
            alert('error');
        },
    });

Based on the ajax call, my browser will be redirected to a page with hyperlink. But this never happened, and the results are related to values in the dataType:

  1. dataType: "html", ajax success fired, but I got error msg: 405 Method Not Allowed The method GET is not allowed for this resource.
  2. dataType: "json", ajax error fired
  3. dataType: "data", ajax error fired

I have checked the server side, it seem like a pdf was always generated no matter what dataType I selected. Also when ajax error was fired, from the console.log(data), I can see the webpage with the correct hyperlink. Can anyone give me some suggestions? Thanks!

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
Waitting for answers

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...