我有一个调用 Twitter 1.1 API 并返回 50 个 ID 号的 PHP 脚本。然后我使用 Foreach 参数将结果单独打印到页面上。我想将每个不同的 ID 号存储在按钮内作为隐藏值,然后使用 JQuery Ajax 将该值发布到不同的 PHP 页面以进行进一步处理,而无需离开或刷新 50 个 ID 号的页面。
如果我使用这个 Foreach 参数,则 50 个 ID 号都是数组中的第一个结果,而不是 50 个单独的 ID 号,这不是我想要的:
foreach ($Results as $arrResult) {
$IDstring = $arrResult['id_str'];
print("<form id='RT' onsubmit='return submitForm();'>
<input type='hidden' name='id' value=$IDstring>
<input type='submit' value='ReTweet'></form>
");
}
但是,如果我从 Foreach 参数中删除此部分,则 50 个单独的 ID 号将打印到表单的隐藏值中:
onsubmit='return submitForm();'
问题是我的 JQuery 脚本正在监听 submitForm,如果没有上面的那一行,JQuery 将无法运行。这是我的 JQuery 脚本:
<script>
function submitForm() {
$.ajax({type: 'POST', url: 'results.php', data: $('#RT').serialize()});
return false;
}
</script>
我知道删除 onsubmit='return submitForm();' 给我来自 Foreach 的 50 个唯一 ID 号,因为此代码将打印 50 个按钮,每个按钮都包含单独的值。但是因为没有 JQuery 脚本监听 submitForm 我必须添加method='post' action='results.php以发布按钮的值,但这意味着页面 results.php 加载这不是我想要的:
foreach ($Results as $arrResult) {
$IDstring = $arrResult['id_str'];
print("<form id='form' method='post' action='results.php'>
<input type='hidden' name='id' value=$IDstring>
<input type='submit' value='ReTweet'></form>");
}
因此,我希望 foreach 打印 50 个唯一 ID 号,同时还允许我使用 JQuery Ajax 脚本。我希望这很清楚,我不知道如何描述我想做的事情:D