Ajax将内容从json数组加载到div中

时间:2013-04-22 04:05:00

标签: php javascript json jquery

我的网页应该以随机顺序生成一系列问题。每个问题都是一个单独的HTML页面,带有图片和多个选项。在页面加载时,应该有一个默认问题,然后单击下一步加载新页面。我现在:

  1. 使用html页面的名称创建一个php数组并对其进行随机播放。
  2. 将此数组转换为可在Javascript中访问的json数组。
  3. 尝试ajax加载页面。
  4. 我陷入了第三步;如何在ajax调用中发送json数组元素,即

    $.ajax({
      url: name+".html",
      success: function(html){
        $("#container").empty().append(html);
      }
    });
    

    其中name是存储在json数组中的网页的名称,容器是我当前php页面上的div。 如果有更简单的方法来完成上述任务,我也会对此持开放态度。

    谢谢!

    EDIT 第2步:

             var xdata = <?php echo json_encode($testArray); ?>;
    

    其中$ testArray是php shuffled网页数组。

2 个答案:

答案 0 :(得分:0)

$.ajax({ url: name+".html", success: function(html)     
                $("#container").empty().append(html);                           
                }                                      
                });

有1'{'和2'}' 尝试

$.ajax({ url: name+".html", success: function(html){     
                $("#container").empty().append(html);                           
                }                                      
                });

答案 1 :(得分:0)

使用jQuery load function

var pageToLoadIntoContainer = 'Test1.html';

$('#container').load( pageToLoadIntoContainer );

扩展此答案以尝试解决所有元素......

<?php

$pageArray = shuffle(array(
  'Test1' ,
  'Test2' ,
  'Test3'
));

....

?>
<script>

var pageArray = <?php echo json_encode( $pageArray ); ?>;

....

$('#container1').load( pageArray[0] );
$('#container2').load( pageArray[1] );
$('#container3').load( pageArray[2] );

</script>