Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从PHP文件加载HTML时,jQuery.load或jQuery.ajax()的速度更快的是什么?_Ajax_Performance_Jquery_Jquery Load - Fatal编程技术网

从PHP文件加载HTML时,jQuery.load或jQuery.ajax()的速度更快的是什么?

从PHP文件加载HTML时,jQuery.load或jQuery.ajax()的速度更快的是什么?,ajax,performance,jquery,jquery-load,Ajax,Performance,Jquery,Jquery Load,我为这两种请求准备了名为content.PHP的PHP文件,例如: <?php // Id params passed via GET method $get = $_GET['param']; switch ($get) { case "param_value": ?> <div data-param="<?php echo $get; ?>"> // My HTML content here </div> &

我为这两种请求准备了名为content.PHP的PHP文件,例如:

<?php
  // Id params passed via GET method
  $get = $_GET['param'];
  switch ($get) {
    case "param_value":
?>
  <div data-param="<?php echo $get; ?>">
    // My HTML content here
  </div>
<?php
      break;
    case default:
      break;
  }

  // Id params passed via POST method
  $post = $_POST['param'];
  if ($post != "") {
    $data['output'] = '
      <div data-param="<?php echo $get; ?>">
        // My HTML content here
      </div>
    ';
    echo json_encode($data);
  }
?>
哪条路更快


除了请求和返回的速度,我还想知道哪种方式对应用程序的安全性更好

两种方法做的事情几乎完全相同

在内部,$selector.load使用$.ajax获取数据,然后$selector.html将所选元素的html设置为$.ajax调用的响应

如果要将html加载到元素中,请使用$selector.load,因为它更具可读性。一个和另一个一样安全,一样快


注意:jQuery现在在内部使用$.parseHTML而不是$selector.html将字符串转换为html。但这并没有改变任何事情。

两种方法做的事情几乎完全相同

在内部,$selector.load使用$.ajax获取数据,然后$selector.html将所选元素的html设置为$.ajax调用的响应

如果要将html加载到元素中,请使用$selector.load,因为它更具可读性。一个和另一个一样安全,一样快


注意:jQuery现在在内部使用$.parseHTML而不是$selector.html将字符串转换为html。不过,这并没有真正改变任何事情。

我不知道具体细节,但我认为在安全性方面没有区别。load and get是ajax的优化版本,因此它们总是更快更好,但我不认为您或您的访问者会在像您这样的查询中感受到差异

我不知道具体细节,但我认为在安全性方面没有差异。load和get是ajax的优化版本,因此它们总是更快更好,但我不认为您或您的访问者会在像您这样的查询中感受到差异。

。load只是$.ajax和$element.htmldata的缩写,没有其他区别。您还可以使用$.post'/content.php'、{param:value}、函数{}、'json';或$.getJSON/content.php?+sParams,函数{};load只是$.ajax和$element.htmldata的缩写,没有其他区别。您还可以使用$.post'/content.php'、{param:value}、函数{}、'json';或$.getJSON/content.php?+sParams,函数{};这也是$.ajax的简写形式。
var oWrapper = jQuery("#wrapper"),

// Loading HTML via jQuery.load() function
    sParams = jQuery.param({ param: "value" });
oWrapper.load("/content.php?" + sParams, function () {
  console.log("content loaded via load()");
});

// Loading HTML via jQuery.ajax() function
jQuery.ajax({
  type: "POST",
  dataType: "json",
  url: "/content.php",
  cache: false,
  data: { "param": "value" },
  success: function (data) {
    oWrapper.html(data.output);
    console.log("content loaded via ajax()");
  }
});