我想用使用http请求从数据库获得的一些数据填充一个表。我使用php脚本获得json编码的数据,然后使用从php脚本回显的jquery填充表。我看上去一点也不整洁,我想知道我怎么能做不同的事情。
我希望在单独的文件中包含php和js,因为当我查看网页的源代码时,就像3k+行一样,因为所有的javascript代码都是在一个脚本标记中生成的,并且由于大量的数据,javascript代码会被重复。我必须处理的实际数据将比我现在用于测试的数据还要大。
为了让您更好地了解我目前正在做的事情,我将在这里编写一些虚拟代码:
<?php
require_once ('functions.php');
include 'header.html';
include 'standardTable.html';
$results = file_get_contents("http://url.com");
$decodedResult = json_decode($results, true);
// I have a function that creates and empty table based on how big the data set is
// This function is placed in functions.php
CreateEmptyTable($decodedResults);
// Then I go ahead and populate the table based on some rules
PopulateTable($decodedResults);
function PopulateTable($res)
{
$rowNum = 0;
for ($i=0;$i<count($res);$i++)
{
$rowNum++;
foreach($res as $key => $value)
{
if ($key == "something")
echo '$("tbody tr#row_'.$rowNum.'")
.find("td:nth-child(id_based_on_key)").text("'.$value.'");
';
else if ($key == "something_else")
echo 'some other jquery lines';
}
}
}
include 'footer.html';因此,正如您所看到的,这看起来一点也不漂亮,所以我想知道我是否可以用另一种方式构造我的代码。要记住的是,我必须将php值传递给javascript代码。
如果你能帮我解决这个问题,我会很感激,如果你需要更多的细节,因为我写了一个简短的例子,它可能不够清楚。
干杯!
发布于 2014-08-11 10:24:29
听说过阿贾克斯?还是jQuery Ajax?
基本上这是我会做的:
文件-作为后端只创建响应并控制数据库.
HTML文件-将成为View.
JS\jQuery -作为控制器.
Ajax允许您从其他服务器异步请求数据或发送数据。
所以这个结构更像是:

发布于 2014-08-11 10:20:37
为什么不使用XMLHttpRequest来调用PHP页面返回的JSON数据,并直接将表构建到DOM中呢?
这就是我选择做的事情,让PHP只读取数据库并吐出JSON,我会让javascript收集它,并使用CSS等设置所需的表格式。
您认为必须嵌入到JavaScript中的PHP到底是什么?
https://stackoverflow.com/questions/25240844
复制相似问题