Javascript 切换cookie true false magento
当用户按下my mage store上的按钮以显示和隐藏增值税价格时,我使用jquery cookie删除cookie 我现在的js看起来是这样的:Javascript 切换cookie true false magento,javascript,php,jquery,magento,cookies,Javascript,Php,Jquery,Magento,Cookies,当用户按下my mage store上的按钮以显示和隐藏增值税价格时,我使用jquery cookie删除cookie 我现在的js看起来是这样的: $j('.nav-customer-vat a').click(function(){ $j(this).text($j(this).text() == 'Show VAT' ? 'Hide VAT' : 'Show VAT'); $j(this).toggleClass('active'); if($j(this).t
$j('.nav-customer-vat a').click(function(){
$j(this).text($j(this).text() == 'Show VAT' ? 'Hide VAT' : 'Show VAT');
$j(this).toggleClass('active');
if($j(this).text() == 'Show VAT'){
console.log('show');
$j.cookie("showVat", false, { path: '/' });
} else if($j(this).text() == 'Hide VAT'){
$j.cookie('showVat', true)
console.log('hide');
}
}
然后,Im在前端使用以下magento cookie getModel测试cookie是真是假:
<?php $cookie = Mage::getModel('core/cookie')->get('showVat'); ?>
<?php if($cookie){ ?>
<a href="#" class="display-vat"><?php echo $this->__('Hide VAT'); ?></a>
<?php } else { ?>
<a href="#" class="display-vat"><?php echo $this->__('Show VAT'); ?></a>
<?php } ?>
然而,这似乎只工作了一次,然后每次点击都会返回false,我似乎不明白为什么会这样。任何帮助都会很棒。这是因为cookies被保存为字符串。字符串“false”的计算结果为true。所以您需要设置实际的字符串值并进行比较
这篇文章中的更多信息:为了澄清Aximus就在上面,我做了如下更改:将cookie更改为:$j.cookie('showVat','enabled',{path:'/');如果($j(this).text()=='Show-VAT'){$j.cookie(“showVat”、'disable'、{path:'/'});},则在php中