1

所有,请原谅我是 jquery 的新手。我发现jquery load api中不存在这个 api 的更多细节。这是我从中学到的东西,我有一些关于它的问题。请查看它。

这个 api 包括这些使用方式来进行 ajax 调用。

  • $('#result').load('ajax/test.html');//ajax加载一个html文件,它使用 Get方法。
  • $('#result').load('ajax/test.html .someclass');//ajax 从 html 文件中加载选定的内容。
  • $('#result').load('ajax/test.html', function() { alert('Load was performed.');});//成功时回调。
  • $(document).ready(function(){ $("input").keyup(function(){ txt=$("input").val(); $("span").load("/jquery/gethint.asp",{suggest:txt}); }); });//我不确定这是什么data意思。服务器端如何得到这个data

到目前为止,我没有找到当数据是一个字符串时的示例,该字符串将作为 jquery 的参数添加到 url 中。我希望有人也可以为我说明一些代码。谢谢。

更新

请注意,loadapi 始终使用serialize将 UI 输入值格式化为 json 的方法。谢谢。

4

2 回答 2

2

可以通过这些方式给出datajQuery中的。$.load()

  • 作为 JSON 对象。

      data: {"foo": "bar"}
    
  • 作为一个字符串

      data: "foo=bar"
    

您可以使用这两种方式。第一个是对象方式。


对于您的四个查询:

  • 是的你是对的。它使用GET方法。
  • 来自 HTML 文件,并使用该特定类的 HTML。不确定课程是否被接受,但我使用了 ID。
  • 是的你是对的。在 AJAX 请求完成后执行一些 JavaScript。
  • data在上面已经解释过了。

服务器端脚本

PHP

<?php
  if (!isset($_GET['foo']) && $_GET['foo'] == "bar")
    die("true");
  else
    die("false");
?>

ASP

<%
  IF Request.Form("foo") = "bar" Then
    Response.Write "true"
  ELSE
    Response.Write "false"
  END IF
%>
于 2013-03-03T14:50:09.627 回答
1

在 jQuery 中有多种使用 Ajax 的方法,最基本的方法是 .ajax()。

以下是一些有用的速记方法:http ://api.jquery.com/category/ajax/shorthand-methods/

这些方法的作用与 ajax 相同,只是语法更简单,并且预先配置为执行特定任务。

我不确定我是否理解你的问题,但我会回答你的问题的任何interpertation:

  1. 如果要向服务器发送参数,则使用 load 函数的第二个参数发送参数,如下所示:

    $('#result').load('ajax/test.html', {prop:val, prop2:val});
    

    这些道具将被添加到您的请求中(通过 get 或 post 方法,根据配置)

  2. 如果您希望从服务器接收数据到参数中,请使用以下内容:

    $('#result').load('ajax/test.html', function(data){ console.log(data); });
    

    在这种情况下,function 是一个回调,一旦请求完成就会运行,并且 data 包含来自服务器的响应的所有内容。

于 2013-03-03T14:53:56.343 回答