我有一个页面,其中包含所有用户的下拉列表。当一个人在下拉列表中选择某人时,我会触发ajax调用以获取用户的信息。一切正常。我试图在一个div中显示ajax调用的结果,所有div都非常像。
我试过这个:
function getInfo(id)
{
$.ajax({
type: "GET",
url: "users/userInfo.php",
data: "userId=" + id,
success: function(result){
$("#userData").html(result);
}
});
$("#userData").hide();
$("#userData").slideDown('slow');
};
并且在一个人做出的第一个选择中,它不会滑动,它只是出现。但是,如果该人选择不同的选项,则幻灯片可以完美地运行。我怎么能得到第一个ajax响应滑动?
我添加了.hide(),因为我读到它必须被隐藏才能滑动。我尝试了animate(),这是一场灾难......
答案 0 :(得分:8)
您需要重新安排通话。在ajax调用之前移动hide
。然后将slidedown
移到成功回调中:
function getInfo(id)
{
$("#userData").hide();
$.ajax({
type: "GET",
url: "users/userInfo.php",
data: {userId: id},
success: function(result){
$("#userData")
.html(result)
.slideDown('slow');
}
});
};
答案 1 :(得分:0)
我在主页上的ajax调用中尝试了两个函数hide
然后slidedown
进行导航但未成功。
Here是我的网站,当您点击下载时,您会发现它只是第一次运行。当您再次单击时,它将被隐藏。
Here是我的js,我希望你能给我一个提示。
我附上点击下载时调用的js函数:
function download( ) {
//$('#download').hide();
$.post(ajfile+'download', function(res) {
$(".container").css("display","none");
$('#download').html(res);
});
}
我附上php代码,用链接调用js:
<div id="header" >
<ul id="navigation">
<?php
# links
foreach ($nav as $nav2) {
echo '<li><a href="#'.lcfirst($nav2).'">'.$voc[$nav2].' ( ';
# ü not possible as dec value
if ($nav2== 'Aboutus')
echo 'u';
else
echo lcfirst(substr( $voc[$nav2],0,1));
echo ' ) </a></li>';
} ?>
</ul>
<input type=button onclick=download() value=Download(l)>
</div>
Here是我使用的教程,演示了如何使用按键和链接创建网站。
基本上我在href
标记内使用a
属性作为导航链接。此外,我有一个按键监听器事件。因此,每次单击链接或按下某个键时,都会调用带有id的div来显示内容。其余内容使用js css()
方法隐藏。