cari

Rumah  >  Soal Jawab  >  teks badan

javascript - penyerahan ajax borang js kelihatan diduakan

Saya mempunyai masalah penyerahan borang ajax sebelum ini, menggunakan FormData, tetapi penyerahan akan terus ke blok kaedah ralat Selepas mendengar apa yang dikatakan oleh rakan sekelas saya sebelum ini, saya menukar <button> > Saya mendapat penyelesaiannya, tetapi saya tidak dapat memikirkannya. Saya harap seseorang boleh membantu saya memikirkannya (tidak kira sama ada saya menggunakan <butang> atau <jenis input="button"/>, latar belakang. boleh berjalan seperti biasa dan kembali, jika Menggunakan <butang> akan terus memasuki blok ralat apabila menerima data di latar belakang, semasa menggunakan <input type="button"/> disiarkan di bawah

bentuk

    <form id="upForm" method="post" basePath=<%=basePath %> enctype="multipart/form-data">
      <table id="uptable">
        <tr>
          <td><span class="required">*</span>&nbsp;终端类型</td>
          <td><select id="terminalType" name="terminalType">
            <option value="PC">PC</option>
            <option value="ANDROID">Android</option>
          </select></td>
          <td></td>
        </tr>
        <tr>
          <td><span class="required">*</span>&nbsp;上传安装包</td>
          <td><input id="upfile" type="file" name="upfile"/>&nbsp;&nbsp;必须上传软件安装包</td>
        </tr>
        <tr>
          <td><span class="required">*</span>&nbsp;软件类型</td>
          <td><input id="appType" type="text" name="appType"/>&nbsp;&nbsp;必须填写软件类型</td>
        </tr>
        <tr>
          <td>&nbsp;&nbsp;&nbsp;新版本描述</td>
          <td><textarea id="description" rows="6" cols="80" name="description"></textarea></td>
        </tr>
        <tr>
          <!-- action="version/upload"  -->
          <td align="center" colspan="2"><input type="button" id="submit_btn" value="上传"></td>
        </tr>
      </table>
    </form>

js kod

$(function(){
    
    $("#submit_btn").on("click",function(){
        submit();
    });
});
function submit(){
    var formData = new FormData($("#upForm")[0]);
    var appType = $("#appType").val();
    if(!/[0-9]+/.test(appType)){
        alert('appType must be number')
    }
    $.ajax({
        type:'post',
        url:$("#upForm").attr('basePath')+'version/upload',
        cache:false,
        contentType:false,
        processData:false,
        data:formData,
        dataType : 'json',
        success:function(callback){
            $("#msg_p").text(callback.msg);
            $("#msg_p").show();
            setTimeout(function(){
                $("#msg_p").hide();
                if (callback.success == true)
                    alert(1);
                    //window.location.href="version/upPage";
                else
                    alert(0);
            },500);
        },
        error:function(){
            alert("进入error function");
        }
    });
大家讲道理大家讲道理2763 hari yang lalu472

membalas semua(3)saya akan balas

  • 黄舟

    黄舟2017-05-19 10:25:45

    Dua tag berikut akan menyerahkan borang secara automatik:
    <button>
    <input type="submit">

    Teg berikut tidak akan menyerahkan borang secara automatik:
    <input type="button">

    Jika anda menggunakan dua yang pertama, penyemak imbas itu sendiri akan membantu anda menyerahkan sekali, dan kod anda akan diserahkan sekali lagi $("#submit_btn").on("click",function(){
    Ia akan diulang.

    balas
    0
  • 習慣沉默

    習慣沉默2017-05-19 10:25:45

    Jangan letak elemen <button>标签当成<form>中的input.

    Jika anda menggunakan elemen butang dalam bentuk HTML, pelayar yang berbeza akan menghantar nilai yang berbeza. Internet Explorer akan menyerahkan teks antara <butang> dan <butang/> manakala penyemak imbas lain akan menyerahkan kandungan atribut nilai

    balas
    0
  • 迷茫

    迷茫2017-05-19 10:25:45

    Gunakan butang untuk menentukan jenis=butang untuk mengelakkannya

    balas
    0
  • Batalbalas