dongtuoji5396 2014-01-10 06:04
浏览 26
已采纳

Ajax调用了两次

I'm using an ajax call for upload pdf files. After triggering upload button the ajax calls two times. I checked the entire code. But couldn't get any solution. Kindly help me :)

My code is, HTML:

<div class="uk-form-row">
        <div id="loadingPDFUpload"><i class="uk-icon-spinner uk-icon-spin"></i></div>
        <div id="targetUpload"></div>
        <label class="uploadLbl">Upload Book:</label> 
        <div class="uploadWrap">
            <input name="pdfFile" id="pdfFile" type="file" size="30" />
            <input type="submit" name="submitBtn" class="uk-button uk-button-primary uk-button-small" value="Upload" onclick="return uploadPDF()" />
        </div>
    </div>

ajax code:

function uploadPDF(){
$("#frm").attr("action","upload.php");
$("#loadingPDFUpload").show();
$("#frm").ajaxForm({
    target: '#targetUpload',
    complete: function(){
        $("#loadingPDFUpload").hide();
    }
}).submit();}
  • 写回答

4条回答 默认 最新

  • dtn55928 2014-01-10 06:07
    关注

    You have a submit button calling the function but then the function uses the forms submit method. That is probably triggering a double call on the function.

    I see you are using jQuery and the jQuery Form Plugin, so this should be relatively easy to fix. I would create the event handler directly in the JavaScript to avoid messy markup. Remove the onclick attribute of your submit button:

    <input type="submit" name="submitBtn" class="uk-button uk-button-primary uk-button-small" value="Upload" />
    

    Then do something like this in your code:

    $(document).ready(function() {
        $('#frm').submit(function(e) {
            e.preventDefault(); //stops the default submit action
            $('#loadingPDFUpload').show();
            $(this).attr('action', 'upload.php');
            $(this).ajaxForm({
                target: '#targetUpload',
                complete: function(){
                    $("#loadingPDFUpload").hide();
                });
            });
        })
    });
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 关于#hadoop#的问题
  • ¥15 (标签-Python|关键词-socket)
  • ¥15 keil里为什么main.c定义的函数在it.c调用不了
  • ¥50 切换TabTip键盘的输入法
  • ¥15 可否在不同线程中调用封装数据库操作的类
  • ¥15 微带串馈天线阵列每个阵元宽度计算
  • ¥15 keil的map文件中Image component sizes各项意思
  • ¥20 求个正点原子stm32f407开发版的贪吃蛇游戏
  • ¥15 划分vlan后,链路不通了?
  • ¥20 求各位懂行的人,注册表能不能看到usb使用得具体信息,干了什么,传输了什么数据