我只获得了const appRoutes: Routes = [
{
path: 'users',
component: UsersComponent,
children: [
{
path: '',
component: UserDetailComponent
},
{
path: ':userId',
component: UserDetailComponent
}
]
},
{ path: '**', redirectTo: '/users', pathMatch: 'full' }
];
的最后一个值,我给了它一个唯一的ID,我仍然得到最后一个值
foreach loop
这是我用来获取id的 <?php
if (!empty($array)){
foreach($array['users'] as $id){
echo '<a href="#" id="btnClick" onClick="clickEvent();">
<div class="choices">
<dl>
<dt id="id'.$id['userID'].'">'.$id['userID'] .'</dt>
<dd id="name">'.$id['userName'].'</dd>
<dd>'.$key.'</dd>
</dl>
</div>
</a>';
}
}
?>
,所以我可以直接将它放在url上。
javascript
答案 0 :(得分:2)
var foo = "<?php echo $id['userID'] ?>";
$id
的值是$array['users']
中的最后一个元素foreach
循环它。因此,$id['serID']
是最后一个元素userId
。
一个简单的解决方案是修改clickEvent()
以接受参数,在这种情况下为userId
。
PHP:
echo '<a href="#" id="btnClick" onClick="clickEvent("' . $id['userID'] . '");">
......';
JavaScipt将是:
function clickEvent(userId){
var json = 'http://batz.web/Sandbox/details.php?userID=' + userId;
console.log(json);
$.getJSON(json, function (results){
document.getElementById("title").innerHTML = results.users[0].userID;
document.getElementById("body").innerText = results.users[0].userAddress;
});
}
答案 1 :(得分:2)
循环结束后,$id
的值保存循环的最后值。因此,最后一个值在
var foo = "<?php echo $id['userID'] ?>";
其中一个解决方案可以将$id['userID']
作为参数传递给clickEvent
:
echo '<a href="#" id="btnClick" onClick="clickEvent(' . $id['userID'] . ');">
将clickEvent
定义为:
// now foo is an argument
function clickEvent(foo){
var json = 'http://batz.web/Sandbox/details.php?userID=' + foo; // use foo, not foo1
console.log(json);
$.getJSON(json, function (results){
document.getElementById("title").innerHTML = results.users[0].userID;
document.getElementById("body").innerText = results.users[0].userAddress;
});
}