Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果另一个div具有特定文本,则隐藏div_Javascript_Jquery_Bigcommerce - Fatal编程技术网

Javascript 如果另一个div具有特定文本,则隐藏div

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

基本上,这是一个店面网站。我想能够有价格显示为“登录成本”时,客户没有登录。未登录时,所有物品的价格默认为“$0.00”

除了将价格更改为“登录成本”之外,我还想隐藏包含“添加到购物车”按钮和比较按钮的div

我在网上找到了一个(在“添加Javascript”下找到的),这就是我到目前为止想到的

<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>