0

我在一个页面上有一个 div,它从 MySQL 数据库中随机化数据(图片和文本)并显示它。基本上,每次您点击刷新时,它都会显示不同的图片和文字。是否可以放置一个按钮做完全相同的事情,而不必刷新整个页面?

4

2 回答 2

1

使用 jQuery$.ajax()$.html().

通过 .将 jQuery$.ajax()连接到您的按钮$.click()。然后对于返回的数据,将div的内容设置为$.html()

贴一些代码,我会提供更多细节。

于 2013-04-10T19:16:54.027 回答
0

对于您正在尝试做的事情,这可能有点复杂。但是有了这个,您可以将多个图像作为 JSON 发送回,并让您的成功函数循环通过它们,等等。

jQuery ajax 帖子:

$("#yourbutton").click(function(e){ //when your button is clicked
e.preventDefault();
$.ajax({
    type: 'POST', // or POST
    url: 'ajax/testajax.php',
    dataType: 'json',
    data: {'getimage' : '1'}, // just post a 1 because you're getting a random image anyway
    success: function(response) {
        var obj = eval(response);
        var image = obj[i];
        var newPic = $('<img/>',{ //new img with the following attributes
            src: image.src,
            name: image.name,
            width: '100' //and other attributes you want to include
        });
        newPic.appendTo("#container"); //apendd the new image to the container  
    }
});
});

php:

if(!empty($_POST['getimage'])){

    if($_POST['getimage'] == 1){

         // do your query for the random image

        $img = array(
            array("name" => $row['imageName'], "src" => $row['imageSrc'])
        );
        echo json_encode($img);  //send back as JSON

    } else {

        echo 'fail';  // send back a failure

    }
}
于 2013-04-10T22:02:52.503 回答