我正在寻找一些基本的指导。我了解 jQuery。而且我了解PHP。我在使用 AJAX 时遇到了一些困难。
我可以使用 AJAX 从 PHP 和后续数据库内容中提取数据,但是如何在 HTML 中使用它?
我习惯的:
<?php
echo '<html><head></head><body>';
$query = mysql_query("SELECT something FROM sometable WHERE field='.$field.'");
while ($row = mysql_fetch_array($query)) {
$id = $row['id'];
$name = $row['name'];
if (str_len($name >= 15)) { $name = substr($name,0,15)."..."; }
$icon = '';
switch($id) {
case 1: $icon = 'A';
case 2: $icon = 'B';
case 3: $icon = 'C';
}
echo '<a href="#'.$id.'">'.$icon.$name.'</a><br />';
}
echo '</body></html>';
?>
如何以类似的方式使用 AJAX?
或者我什至应该尝试与 AJAX 类似的东西吗?
例如,我可以这样做(在正确的 HTML 内):
$.ajax({
url: 'api.php',
data: "",
dataType: 'json',
success: function(rows)
{
for (var i in rows) {
var row = rows[i];
var id = row[0];
var vname = row[1];
$('#output').html('<a href="#id'+id+'">'+vname+'</a><br />');
}
}
});
我遇到的困难是理解如何将开关和其他数据操作实现为 AJAX 项目/数据/对象。
api数据调用类似这样:
$result = mysql_query("SELECT something FROM sometable WHERE field =$field");
$data = array();
while ($row = mysql_fetch_row($result)) {
$data[]=$row;
}
echo json_encode($data);
这是我应该操作数据的地方吗?如果是这样,是否有最好的特定方式?:
我是否只是在 PHP 中设置数据操作?如果是这样,如何正确地通过 AJAX 传递该数据?
还是我应该使用 jQuery/javascript 来执行所有数据操作?
我搜索过,我发现 90% 的 AJAX 教程本质上都很简单,并没有真正解释这些事情。
编辑:JSON 数据的一般控制台输出如下所示:
success: function(data)
{
$.each(data, function(index, item){
var name;
for(name in item){ console.log(name + " = " + item[name]);}
});
}
和控制台:
{ 0 = id }
{ 1 = name }
{ 2 = 3.7 }
{ 3 = Y }
{ 4 = 0 }