我需要在用户点击时从PHP获取变量到Javascript。我有一个查询返回的数据数组,我需要为单击的元素传递一个ID值,以便我可以使用另一个PHP页面通过.load填充其他数据集。我不确定这是怎么回事?
页面中的Javascript代码:<script type="text/javascript">
$(function () {
$("#pass_userid_div").click(function () {
$("#another_div").load('remote_pages/get_info.php?userid=' + $GET_THE_USERID_AND_PASS_HERE);
});
});
</script>
页面中的PHP代码:
$query_str = "SELECT id, username, dateregistered FROM users";
$query = mysql_query($query_string) or die(mysql_error());
while ($results = mysql_fetch_array($query)) {
print "<div id='pass_userid_div'>{$results['username']}</div>";
print "<div>{$results['dateregistered']}</div>";
}
答案 0 :(得分:1)
$("#another_div").load('remote_pages/get_info.php?userid=' + $GET_THE_USERID_AND_PASS_HERE, function(){
$("#another_div #pass_userid_div").each(function(){
var yourvar =$(this).text();
// use your var
})
});
请不要使用多个具有相同ID的div。请改用class
答案 1 :(得分:1)
为什么必须是div?使用interactive element:
PHP:
while ($results = mysql_fetch_array($query)) {
print "<button type='button' name='pass_userid_div' value='{$results['id']}'>{$results['username']}</button>";
print "<div>{$results['dateregistered']}</div>";
}
JavaScript的:
<script type="text/javascript">
$(function () {
$("button[name='pass_userid_div']").click(function () {
$("#another_div").load('remote_pages/get_info.php?userid=' + $(this).val());
});
});
</script>
更新:如果确实必须是div,use a data-
attribute:
<div class="pass_userid_div" data-userid='{$results['id']}'…
…$(this).data("userid")