簡體   English   中英

jQuery的Ajax請求無法正常工作

[英]Ajax request with jQuery not working

我已經很久沒有發展了,我失去了一些反思。

有人能幫我嗎?

根據谷歌瀏覽器,當我按提交時,它什么也沒有發生:

的HTML

<form>
    <label for="title">Title :</label>
        <input type="text" id="title" />
    <label for="comment">Comment :</label>
        <input type="text" id="comment" />
    <label for="project">Project :</label>
        <input type="text" id="project" />

    <input type="submit" value="Submit" />
</form>

的JavaScript

$(function(){
    $('form').submit(function(){
        return false;
        $.ajax({
            type: 'POST',
            url: 'http://support.foo.com/insert_bug.aspx',
            data: 'username=mr%20dog&password=dog%3Ddog&short_desc=' + $('#title').val() + '&comment=' + $('#comment').val() + '&projectid=' + $('#project').val(),
            success: function(msg){
                alert(msg);
            }
        })
    });
});

insert_bug.aspx

string username = Request["username"];
string password = Request["password"];
string short_desc = Request["short_desc"];
string comment = Request["comment"];
string projectid_string = Request["projectid"];

如果我從瀏覽器發送網址,則會添加該錯誤。

問題是您要在調用.ajax之前從submit事件處理程序中返回,這意味着您甚至無法實現AJAX調用。 您可以將return語句移到函數主體的末尾:

$('form').submit(function(){
    //AJAX call...
    return false;
});

或者,您可以使用事件對象的preventDefault方法達到相同的效果:

$('form').submit(function(e){
    e.preventDefault();
    //AJAX call...
});

如果任何地方發生任何事情,我感到很驚訝-在調用$.ajax函數之前,您正在從Submit函數返回false。 嘗試:

$(function(){
    $('form').submit(function(){
        $.ajax({
            type: 'POST',
            url: 'http://support.foo.com/insert_bug.aspx',
            data: 'username=mr%20dog&password=dog%3Ddog&short_desc=' + $('#title').val() + '&comment=' + $('#comment').val() + '&projectid=' + $('#project').val(),
            success: function(msg){
                alert(msg);
            }
        });
        return false;
    });
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM