在数据库中,存储了许多项目。当用户加载页面时,项目被列为表格的行。为了使用户可以删除元素(行),每行还提供了一个“删除项目”按钮,并onclick
附加了一个事件。这是生成表格的 PHP 部分。
for ($i=0; $i<$num_books; $i++)
{
$book = mysql_fetch_row($classics);
$shop .= "<tr>\n";
$shop .= "<td>".$book[0]."</td>\n";
$shop .= "<td><input type='button' onclick='remove_item()' value='Remove' /></td>\n";
$shop .= "</tr>\n";
}
该remove_item()
函数在 JQuery 外部定义(见下文)。
但是,现在单击按钮会导致错误:ReferenceError: Can't find variable: remove_item
. 我相信这是因为remove_item()
DOM 不知道 PHP 返回的函数。
如何纠正?
完整的标记在这里
<html>
<head>
<script type='text/javascript'
src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.3/jquery.min.js">
</script>
<script type="text/javascript"
src="../behaviour/interactions.js">
</script>
</head>
<body>
<h1>Publications database</h1>
<div id="items"></div>
</body>
</html>
完整 的interactions.js
脚本在这里
$('document').ready(function()
{
// Path to MySQL configuration.
var server = '../server/'
var data = '../data/'
function mysql_connection_setup()
{
$.get(data + 'mysql_connection_setup.php');
}
function populate()
{
$.get(server + 'shop.php', cb);
}
function remove_item()
{
console.log("Remove item.");
}
// Generic AJAX callback.
function cb(response)
{
$('#items').html(response);
}
mysql_connection_setup();
populate();
}); // End ready