JQuery切换增值税切换

发布于 2024-07-14 00:50:16 字数 1924 浏览 7 评论 0原文

我想实现一个增值税切换器,如您在 http://aria.co.uk 上看到的那样右角虽然我只想在客户端执行此操作。

下面是我想出的一些东西,尽管我需要:

  • 来回切换增值税(我的示例只是一种方式)
  • 保存并从 cookie 中读取切换状态以实现持久性
  • 使其不引人注目/仅在以下情况下才显示切换链接JS可用

    增值税开关</code></p> <p><code><脚本类型=“text/javascript”src=“http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js”></脚本></code></p> <p><code><脚本类型=“text/javascript”></code></p> <p><code>函数 VATswitch(){</code></p> <p><code>var Price = $(".价格强跨度").text();</code></p> <p><code>价格 = 价格 * 10 / 12;</code></p> <p><code>$(".价格强跨度").text(price);</code></p> <p><code>var excl_incl = $(".price em").text();</code></p> <p><code>excl_incl = "(不含增值税)";</code></p> <p><code>$(".price em").text(excl_incl);</code></p> <p><代码>}</代码> <code></script></code></p> <p><code></head></code></p> <p><code><正文></code></p> <p><code><a href="#" onclick="VATswitch();" id="vat_switch">切换增值税</code></p> <p><code><p class="price"></code></p> <p><code><strong>£<span>120</span></strong></code></p> <p><code><em>(含增值税)</em></code></p> <p><代码></p></代码></p> <p><code></body></code></p> <p><code></html></code></p>

请帮忙。

I want to implement a VAT switcher as you can see on http://aria.co.uk top right corner although I want to do it on the client side only.

Below is something I came up with, although I need to:

  • switch VAT back and forth (my example goes just one way)
  • save and read the toggled state from a cookie for persistency
  • have it unobtrusive / display the switch link only if JS is available

    <html>

    <head>

    <title>VAT Switch</title>

    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js"></script>

    <script type="text/javascript">

    function VATswitch(){

    var price = $(".price strong span").text();

    price = price * 10 / 12;

    $(".price strong span").text(price);

    var excl_incl = $(".price em").text();

    excl_incl = "(excl. VAT)";

    $(".price em").text(excl_incl);

    }
    </script>

    </head>

    <body>

    <a href="#" onclick="VATswitch();" id="vat_switch">Switch VAT</a>

    <p class="price">

    <strong>£<span>120</span></strong>

    <em>(incl. VAT)</em>

    </p>

    </body>

    </html>

Please help.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

原来分手还会想你 2024-07-21 00:50:16

最简单的方法是将两个价格呈现到您的页面,然后使用 jquery/css 控制可见性,例如:

<div class="price">
    <span class="incVAT">£11.50 (incl VAT)</span>
    <span class="exVAT">£10.00 (ex VAT)</span>
</div>

然后您的切换器可以执行以下操作:

$('.price .incVAT').show();
$('.price .exVAT').hide();

反之亦然

编辑:我不会在客户端进行计算。 假设您正在开设某种商店,那么并非所有产品都会有增值税,有些产品可能有不同的税率。

编辑评论:

有一个 jquery cookie 库 可以帮助您执行 cookie,所以所有您需要做的就是持久化它,读取加载时的值:

$(function(){

    ShowPrices();

    $('a#vattoggle').click(function(){
        if($.cookie('VATMODE') == "INC"){
            $.cookie('VATMODE', 'EX');
        } else {
             $.cookie('VATMODE', 'INC')
        }
        ShowPrices();
        return false
    });
});


function ShowPrices(){
    if($.cookie('VATMODE') == "INC"){
        $('.price .incVAT').show();
        $('.price .exVAT').hide();
    } else {
        $('.price .incVAT').hide();
        $('.price .exVAT').show();
    }
}

The easiest way would be to render both prices to your page and then control the visibility with jquery/css, something like:

<div class="price">
    <span class="incVAT">£11.50 (incl VAT)</span>
    <span class="exVAT">£10.00 (ex VAT)</span>
</div>

Then your toggler can do:

$('.price .incVAT').show();
$('.price .exVAT').hide();

and vice versa

Edit: I wouldn't do the calculations client side. Presumably you're making a shop of some kind, well not all your products will have VAT, and some may have different rates.

Edit re comment:

There is a jquery cookie library that will help you do the cookies, so all you need to do to persist it is read the value on load:

$(function(){

    ShowPrices();

    $('a#vattoggle').click(function(){
        if($.cookie('VATMODE') == "INC"){
            $.cookie('VATMODE', 'EX');
        } else {
             $.cookie('VATMODE', 'INC')
        }
        ShowPrices();
        return false
    });
});


function ShowPrices(){
    if($.cookie('VATMODE') == "INC"){
        $('.price .incVAT').show();
        $('.price .exVAT').hide();
    } else {
        $('.price .incVAT').hide();
        $('.price .exVAT').show();
    }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文