Py学习  »  Jquery

JQuery循环将php模板加载到HTML中

Djester808 • 3 年前 • 1206 次点击  

我有一个API调用,用来获取数据。这个数据是一个数组数组,我需要遍历它们。对于每个值,我想“加载”一个用这些值创建的php模板。第一个循环正常工作并显示,但在初始值之后,它停止。我需要所有的价值观都被循环使用,让我不高兴。

正在发生的事情的示例:[a、b、c]=>JQuery循环=>负荷=>只有“a”出现。

编辑-每次调用load时,它都会将脚本加载到“elementToLoadPhpFile”中。我注意到它似乎覆盖了之前加载的值。我需要它附加多个子项,而不是覆盖同一个子项。

$.ajax({
            type: 'GET',
            dataType: "json",
            url: 'apiUrl.com'
        }).done(function(data) {
            var result = data['data'];
            jQuery.each(result, function(key, value) {
                var id = value['id'];
                var title = value['title'];
                var img_url = value['images']['jpg']['image_url']
                $("#elementToLoadPhpFile").load("phpFile.php", {
                    id: id,
                    title: title,
                    img_url: img_url
                });
            });
        });
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/130702
文章 [ 1 ]  |  最新文章 3 年前
Twisty
Reply   •   1 楼
Twisty    3 年前

考虑下面的问题。

jQuery(function($) {
  $.getJSON('apiUrl.com', function(response) {
    $.each(response.data, function(key, val) {
      $.get("phpFile.php", {
        id: val.id,
        title: val.title,
        img_url: val.images.jpg.image_url
      }, function(html) {
        $("#elementToLoadPhpFile").append(html);
      });
    });
  });
});

如果 .load() 正在工作,但正在替换内容,正如预期的那样,那么您可能只想获取内容,以便可以附加它。请看这里:

此方法是从服务器获取数据的最简单方法。这大致相当于 $.get(url, data, success) 除了它是一个方法而不是全局函数,并且它有一个隐式回调函数。当检测到成功响应时(即当textStatus为“成功”或“未修改”), .加载() 将匹配元素的HTML内容设置为返回的数据。

对象最好用点符号书写。