我想在点击该框上方的链接时更改div内容框。我在单个按钮上添加了一个单击功能,然后应显示包含该特定框内容的相应潜水。
当我将jQuery应用到页面时,内容不会根据单击的链接而改变,并且页面显示得很笨拙。
这是我正在使用的jsfiddle。 我正在使用的网页是here。
我在哪里犯错误。
到目前为止,我正在使用的jQuery看起来像这样
$(document).ready(function() {
$('.question1').click(function(){
$('.new_member_box_display').load('#answer1');
})
$('.question2').click(function(){
$('.new_member_box_display').load('#answer2');
})
$('.question3').click(function(){
$('.new_member_box_display').load('#answer3');
})
$('.question4').click(function(){
$('.new_member_box_display').load('#answer4');
})
});//end of ready
我正在使用的HTML看起来像这样:
<div class="new_member_box">
<a href="#" class="question1"><h4>Vision</h4></a>
</div>
<div class="new_member_box">
<a href="#" class="question2"><h4>Church History</h4></a>
</div>
<div class="new_member_box">
<a href="#" class="question3"><h4>Becoming a Member</h4></a>
</div>
<div class="new_member_box">
<a href="#" class="question4"><h4>Pastor-in-Training</h4></a>
</div>
</div>
<div class="clear" class="question"></div>
<div id="answer1">
1
</div>
<div id="answer2">
2
</div>
<div id="answer3">
3
</div>
<div id="answer4">
4
</div>
<div class="new_member_box_display" id="question">
Text will appear here when one of the tabs above is clicked
</div>
答案 0 :(得分:4)
load()
使用ajax加载外部文件,而不是页面上的元素。你可能只是试图隐藏和显示元素:
$('[class^="question"]').on('click', function(e){
e.preventDefault();
var numb = this.className.replace('question', '');
$('[id^="answer"]').hide();
$('#answer' + numb).show();
});
答案 1 :(得分:2)
这是一个小提琴,可以做我认为你想做的事情。有更简洁的方法,但这应该工作。 http://jsfiddle.net/PZnSb/6/
基本上你想将一个元素的内部html设置为另一个元素的内部html,如下所示:
$('.question1').click(function(){
$('.new_member_box_display').html($('#answer1').html());
})
而不是:
$('.question1').click(function(){
$('.new_member_box_display').load('#answer1');
})
答案 2 :(得分:1)
您似乎只想在单击时更改文本,请尝试此操作。
$(document).ready(function() {
$('.question1').click(function(){
$('.new_member_box_display').text($('.answer1 ').text());
});
$('.question2').click(function(){
$('.new_member_box_display').text($('.answer2').text());
});
$('.question3').click(function(){
$('.new_member_box_display').text($('.answer3').text());
});
$('.question4').click(function(){
$('.new_member_box_display').text($('.answer4').text());
});
});