好, 所以我想刷新2个div只有1个点击1个按钮而不实际刷新页面本身。
我已尝试过以下
HTML:
<div id="main">
<a>
<div id="dialogue" class="dialogue">
<b class="dialogue">Click to continue</b>
</div>
</a>
</div>
Jquery的:
<script>
$(document).ready(function() { /// Wait till page is loaded
$('#dialogue').click(function(){
$('#main').load('dialogue.php?test&count=<?php echo $count ?>', function() {
/// can add another function here
});
});
$('.dialogue').click(function(){
$('#head').load('dialogue.php?head', function() {
/// can add another function here
});
});
});
</script>
这在HTML中:<div id="dialogue" class="dialogue">
需要激活2个div刷新,我做了这个,所以我可以挂两件事。
以下脚本只是错误,只能刷新一次而不是几次,请帮助。
答案 0 :(得分:3)
您可以在单击事件中调用多个函数,如下所示:
<script>
$(document).ready(function() {
// click event
$('#dialogue').click(function(){
// refresh first element
$('#main').load('dialogue.php?test&count=<?php echo $count ?>', function() {
// callback
});
// refresh second element
$('#head').load('dialogue.php?head', function() {
// callback
});
});
});
</script>
由于#dialogue
是#main
的孩子,并且您在点击时替换#main
的内容,点击后#dialogue
按钮就会消失。
一个小注:您的HTML无效。您不能在 <div>
(内联)中包含<a>
元素(块级别)。请尝试使用此标记:
<div id="main">
<a id="dialogue" class="button-dialogue">
<strong>Click to continue</strong>
</a>
</div>
看起来HTML5允许<a>
元素现在包装许多其他东西。感谢Mathletics进行更正。
答案 1 :(得分:2)
而不是:
$('#dialogue').click(function(){
您可以使用:
$('#main').on('click', '.dialog', function(){
因此clic的监听器附加到父级,并将处理其中添加的新“.dialog”元素。