jquery代码片段需要小帮助

时间:2013-07-24 11:09:33

标签: javascript jquery html

我在朋友的帮助下制作了这段代码。现在我正在尝试添加如下所述的功能。但我无法取得成功。

这是小提琴。

小提琴: http://jsfiddle.net/FLgsq/

jquery代码:

$(document).ready(function () {
    $('#word_count').wordCount();
});

jQuery.fn.wordCount = function (params) {
    var p = {
        counterElement: "display_count"
    };
    var total_words;

    if (params) {
        jQuery.extend(p, params);
    }

    //for each keypress function on text areas
    this.keypress(function () {
        total_words = this.value.split(/[\s\.\?]+/).length;
        jQuery('#' + p.counterElement).html(total_words);
    });
};

$(document).ready(function () {
    $('input[name=rdOptin]').click(function () {
        var selected = $(this).val();
        var var0 = 0.3;
        var var1 = 20;
        var var2 = var1 * 3.9 / 100;
        var var3 = 20;
        var var4 = (var1 + var3) * 3.9 / 100;
        if (selected == 'norm')
            var total = var0 + var1 + var2;
        else
            var total = var0 + var1 + var3 + var4;
        $("#calc_value").html("<span style='color: red;'>Numbers</span> <span style='color: green;'>" + total.toFixed(2) + "</span>");
    });
});

我想要实现的是,如果文本字段中的单词数量(已经由函数“jQuery.fn.wordCount”计算)增加超过13变量的输出,我怎么能这样做? “相应地改变已经存在的功能(即它也监视无线电”rdOptin“并基于此进行计算)。相反它只是增加+5或者数字在13-18之间它应该在“计算值:”部分的输出上加5,然后如果18-23增加10,那么24-28增加15等等或6次迭代可以采取。

怎么可以做家伙?

1 个答案:

答案 0 :(得分:1)

$(document).ready(function () {
    $('input[name=rdOptin]').click(function () {
        var selected = $(this).val();
        var var0 = 0.3;
        var var1 = 20;
        var var2 = var1 * 3.9 / 100;
        var var3 = 20;
        var var4 = (var1 + var3) * 3.9 / 100;
        if (selected == 'norm')
            var total = var0 + var1 + var2;
        else
            var total = var0 + var1 + var3 + var4;
        var wordcount = parseInt($("#display_count").html(), 10);
        if (wordcount >= 13) {
            var inc = Math.ceil((wordcount-12)/5);
            total += inc;
        }
        $("#calc_value").html("<span style='color: red;'>Numbers</span> <span style='color: green;'>" + total.toFixed(2) + "</span>");
    });
});

FIDDLE