我使用php-mysql有一个简单的select语句,我有这个脚本用另一个更改文本。
<script type="text/javascript">
$(document).ready( function() {
$('#deletesuccess').delay(500).fadeOut(function(){
$('#deletesuccess').html("text2");
$('#deletesuccess').delay(500).fadeIn("slow");
});
});
</script>
<div id=deletesuccess > text1 </div>
尝试使用php-mysql和jquery上面的脚本显示表中的数据,但它只显示循环不工作的最后一行
$getTextQ = "select * from text";
$getTextR = mysql_query($getTextQ);
while($row = mysql_fetch_array($getTextR)){
?>
<script type="text/javascript">
$(document).ready( function() {
$('#deletesuccess').delay(500).fadeOut(function(){
$('#deletesuccess').html("<?php echo $row['desc']; ?>");
$('#deletesuccess').delay(500).fadeIn("slow");
});
});
</script>
<?php
}
但是无法使用上面的PHP代码逐个显示数据。
答案 0 :(得分:2)
注意,你和php和javascript代码执行之间没有明显的区别。 php代码将对该javascript代码进行回声,并且在php完成执行后(在文档就绪),javascript代码将在istant执行,因此javascript的最后一个echo将在执行中起作用。尝试分开代码。
答案 1 :(得分:2)
您可以使用jQuery ajax轻松完成此操作。
<script type="text/javascript">
$(document).ready( function() {
$.ajax({
url: 'getData.php',
dataType: 'json',
type: 'POST',
success: function(data) {
$('#deletesuccess').delay(500).fadeOut(function(){
$.each(data,function(key, value){
$('#deletesuccess').html(value);
$('#deletesuccess').delay(500).fadeIn("slow");
});
});
}
});
});
</script>
现在在getData.php
页面中,您需要查询并回显json_encode数据。这意味着getData.php
文件应包含以下代码:
<?php
$getTextQ = "select * from text";
$getTextR = mysql_query($getTextQ);
$json = '';
while($row = mysql_fetch_array($getTextR)){
$json .= $row['desc'];
}
echo json_encode($json);
?>
答案 2 :(得分:1)
问题是每次循环运行时都会覆盖JavaScript。相反,你应该这样做:
<script type="text/javascript">
var php_results = '';
</script>
<?php
$getTextQ = "select * from text";
$getTextR = mysql_query($getTextQ);
while($row = mysql_fetch_array($getTextR)){
?>
<script type="text/javascript">
php_results += "<?php echo $row['desc']; ?> | ";
</script>
<?php
}
?>
<script type="text/javascript">
$(document).ready( function() {
$('#deletesuccess').delay(500).fadeOut(function(){
$('#deletesuccess').html(php_results);
$('#deletesuccess').delay(500).fadeIn("slow");
});
});
</script>
当然,必须将其清理干净以使其漂亮,但它应该有效。我将管道添加为数据库中不同描述之间的分隔符。