我是Javascript的新手,尤其是Ajax,所以请耐心听我说……
我希望在插入新行后更新表,但我更喜欢从PHP mysql收集所有数据并使用循环将其插入到预先存在的表中,而不是让Ajax一起输出html表。
这就是我通常使用PHP和一个while()
函数来做的事情,这样我就可以使用一个数组插入数据的各个部分。例如"$mem['Name']"
$mems = mysql_query($sql,$con);
while($mem=mysql_fetch_array($mems)){
$lmc++;
echo '<tr class="data">';
echo '<td class="index">'.$lmc.'</td>';
echo '<td class="name">'.$mem['Name'].'</td>';
echo '<td class="arcid">'.$mem['ArcID'].'</td>';
echo '<td class="type">'.$mem['Type'].'</td>';
echo '<td class="role">';
echo '<input style="width:100%;" type="text" name="art_realname" id="art_realname" class="field" value="'.$mem['Role'].'" tabindex="1" />';
echo '</td>';
echo '</tr>';
};
有没有办法使用AJAX,让我可以首先收集PHP文件中的所有数据并将其放入一个数组中,然后将其发送回AJAX,最后使用Javascript在实际页面上执行循环部分并将其插入到表中?
发布于 2012-09-27 05:14:09
此解决方案需要jQuery,但您可以自由使用任何JS框架/库。
此外,您应该知道使用mysql_*
函数不是一个好主意,因为它们很快就会被弃用。
现在,让我们假设您的服务器上有一个名为ajax.php
的脚本。你应该像往常一样去查询你的数据库,而不是echo
它--放入一个变量中。
<?php
/* your script here */
$data = ... /* data your query returned */
header ("Content-Type: application/json" );
echo json_encode ($data);
?>
然后在客户端:
$.getJSON ( "ajax.php", function (data) {
/* data is the $data from your PHP script */
});
您不是一个笨蛋:)
https://stackoverflow.com/questions/12610397
复制相似问题