2011-06-02 114 views
1

嘿所有,我真的是新来的ajax,我想要做的就是调用一个不返回任何东西的ajax函数。我用jQuery Ajax请求没有加载结果

$('#myDiv')。load('/ ajaxScript.asp');

并且将结果加载到myDiv就好了。我只想运行ajax而不返回任何东西。只需运行我的代码。我该怎么做呢?另外,我该如何检测何时完成这件事?谢谢大家!

+0

您可以指定一个不存在的DIV或加载到隐藏的DIV中。 (我很确定。) – Flipper 2011-06-02 03:05:47

+0

Flipper,这是一个不好的建议。这是hackish!总是寻找替代品;有可能有一个。 – MarioRicalde 2011-06-02 03:15:41

回答

2

使用简单功能:

jQuery.post("{url}", {parameters}, function(data, status){}, "text"); 

jQuery.get("{url}", {parameters}, function(data, status){}, "text"); 

http://api.jquery.com/jQuery.post/http://api.jquery.com/jQuery.get/。当请求返回时,函数将被调用。

+0

太棒了!似乎工作正常。有没有一种方法可以在onComplete做到这一点时说出来?我知道在原型中你做了一些新的Ajax.Request('page.html',{onComplete:function(){}}); – Damien 2011-06-02 11:39:03

+0

当请求完成时,该函数被调用,所以只需将您的逻辑放在那里。例如:''jQuery.post(“{url}”,{parameters},function(data,status){alert(“COMPLETE”);},“text”);'会做。 – Femi 2011-06-02 11:41:18

+0

真棒老兄!那真是太好了。谢谢你的一切! – Damien 2011-06-02 13:02:54

6

您可以使用$.ajax代替加载;这基本上是$(receiver).load()的别名。

文档浏览:http://api.jquery.com/jQuery.ajax/

演示代码在这里:

$.ajax({ 
    url: '/path/to/file', 
    type: 'POST', 
    dataType: 'xml/html/script/json/jsonp', 
    data: {param1: 'value1'}, 
    complete: function(xhr, textStatus) { 
    //called when complete 
    }, 
    success: function(data, textStatus, xhr) { 
    //called when successful 
    }, 
    error: function(xhr, textStatus, errorThrown) { 
    //called when there is an error 
    } 
});