我目前有一个用Bootstrap构建的折叠按钮,我正在尝试将文本从“Read more”转换为“Read less”。我一直在尝试jQuery,但我就是不能让它工作。
<a data-toggle='collapse' href='#collapseExample' id='#collapseExample' class='text-center btn btn-default'>Read More</a>
<div class='collapse' id='collapseExample'>
<p class='readmore'>Lorem ipsum dolor sit amet, consectetur adipisicing elit.</p>
</div>
$(document).ready(function(){
$('#collapseExample').on('click', function () {
var text=$('#collapseExample').val();
if(text==='Read more'){
$(this).text('Read less');
} else{
$(this).text('Read more');
}
});
})
3条答案
按热度按时间v1l68za41#
1.不要在无效的html页面中使用相同的id两次。
1.不要用
#
作为id的开头,在jquery中使用时会导致很多问题。1.字符串必须完全匹配,这样
Read more
就无法工作,您需要使用Read More
。1.不要使用
val()
,而应使用text()
或html()
正在工作的片段
第一个
wsxa1bj12#
您可以设置一个名为
toggled
的变量,其布尔值为true/false
。然后您可以检查链接是否被单击。例如:jQuery代码:
和链接:
示例:https://jsfiddle.net/8wmbzn28/
68de4m5k3#
尝试使用
text()
而不是val()