Javascript 如果另一个div具有特定文本,则隐藏div
基本上,这是一个店面网站。我想能够有价格显示为“登录成本”时,客户没有登录。未登录时,所有物品的价格默认为“$0.00” 除了将价格更改为“登录成本”之外,我还想隐藏包含“添加到购物车”按钮和比较按钮的div 我在网上找到了一个(在“添加Javascript”下找到的),这就是我到目前为止想到的Javascript 如果另一个div具有特定文本,则隐藏div,javascript,jquery,bigcommerce,Javascript,Jquery,Bigcommerce,基本上,这是一个店面网站。我想能够有价格显示为“登录成本”时,客户没有登录。未登录时,所有物品的价格默认为“$0.00” 除了将价格更改为“登录成本”之外,我还想隐藏包含“添加到购物车”按钮和比较按钮的div 我在网上找到了一个(在“添加Javascript”下找到的),这就是我到目前为止想到的 <script type="text/javascript"> $(document).ready( function() { $('.p-price em:contains("$0.0
<script type="text/javascript">
$(document).ready( function() {
$('.p-price em:contains("$0.00")').text("Login for Cost");
$('.p-price:contains("$0.00")').text("Login for Cost");
})
</script>
<script type="text/javascript">
$(document).ready( function() {
if ($('.p-price').html()=='Login for Cost') {
$('.ProductActionAdd').hide();
$('.ProductCompareButton').hide();
$('.CompareButton').hide();
} else {
$('.ProductActionAdd').show();
$('.ProductCompareButton').show();
$('.CompareButton').show();
}
})
</script>
$(文档).ready(函数(){
$('.p-price em:contains($0.00)).text(“登录成本”);
$('.p-price:包含(“$0.00”)。文本(“按成本登录”);
})
$(文档).ready(函数(){
如果($('.p-price').html()=='Login for Cost'){
$('.ProductActionAdd').hide();
$('.ProductCompareButton').hide();
$('.CompareButton').hide();
}否则{
$('.ProductActionAdd').show();
$('.ProductCompareButton').show();
$('.CompareButton').show();
}
})
第一个脚本有效,未登录时价格将更改为“登录成本”,并在登录时显示实际价格。但是,第二个脚本在登录和未登录时都隐藏了3个div
感谢您的帮助!提前谢谢 在javascript中使用
==
是一种糟糕的做法。而是像下面一样使用==
,看看它是否有效。也可以使用.text()
而不是.html()
:
$(文档).ready(函数(){
如果($('.p-price').text()=='Login for Cost'){
//要隐藏的代码
}否则{
//要显示的代码
})
您也可以发布HTML吗?remove else语句…和trydoe没有多大意义。您首先设置该文本…然后尝试搜索它。使用服务器端登录状态至少设置一个变量,或在正文中设置一个类,或以某种方式知道用户是否已登录,并为此$(“.text\u div”)提供包含HTML结构的.text(函数(){return$(this).text().replace(“$0.00”,“登录成本”);}); 代码>这是您的帮助和上述代码的组合。谢谢!
<script type="text/javascript">
$(document).ready( function() {
if ($('.p-price').text()==='Login for Cost') {
//Your code to hide
} else{
//Your code to show
})
</script>