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