我需要创建一个Accordion Ajax控件,它在第一个Pane中有一个记录列表 (例如用户)。 当网络用户查看其中一个用户时,其他窗格必须填充此用户的详细信息。 例如,如果我在第一个记录中使用clic,则Pane2将填充LifeDetails,Pane3与HomeDetails,Pane4与JobDetails等等。
任何人都知道如何实现这个目标?
非常感谢。
路易
答案 0 :(得分:0)
我会尝试使用http://docs.jquery.com/UI/Accordion和http://pjax.heroku.com/ ...
来解决这个问题的内容
<div id="accordion">
<h3><a href="#">pane1</a></h3>
<div>
<ul id="persons">
<li><a href="person1.aspx">Person 1</a></li>
<li><a href="person2.aspx">Person 2</a></li>
<li><a href="person3.aspx">Person 3</a></li>
</ul>
</div>
<h3><a href="#">Life Details</a></h3>
<div>
Some content here
</div>
<h3><a href="#">Home Details</a></h3>
<div>
Some content here
</div>
<h3><a href="#">Job Details </a></h3>
<div>
Some content here
</div>
</div>
标记。然后你的JavaScript应该像
<script src="jquery.min.js"></script>
<script src="jquery.cookie.js"></script>
<script src="jquery-ui.min.js"></script>
<script src="jquery.pjax.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#accordion").accordion();
$('.persons').pjax('#accordion');
});
</script>
在您的aspx中,您检查了HTTP_X_PJAX
标题(请参阅xhr.setRequestHeader('X-PJAX', 'true')
),如果它存在,则只渲染所选项目的<div id="accordion">
(不包含主页,只是div
),如果它不存在,则渲染整个页面(使用母版页)。