jQuery字符计数if语句

时间:2015-08-11 12:20:04

标签: javascript jquery variables if-statement jquery-plugins

我有以下字符数插件:如果有超过9个字符,则添加警报类以将颜色更改为红色。 我想要的是当我说'如果字符数大于9 '时,用var替换数字9。

if(number_of_characters >= 9) {

因此,可以始终从插件选项调整此值,而不是在jQuery插件中更改此值。

我该怎么做?

My working fiddle

3 个答案:

答案 0 :(得分:2)

这是一个有效的Fiddle

我所做的是添加一个新选项 - number_of_characters(您可以根据需要命名):

$(textarea).CountCharacters({
    Start_Count: 0,
    Amount_Result: "counter",
    Alert_Class: "alert-counter",
    Amount_Limit: 19,
    number_of_characters: 5
});

然后,我没有硬编码该值,而是提到了新选项:

if(number_of_characters >= options.number_of_characters) {
    $("#"+options.Amount_Result).addClass(options.Alert_Class);
}

我还设置了一个新的默认选项:

var defaults = {
  Start_Count: 0,
  Amount_Result: false,
  Alert_Class: false,
  number_of_characters: 9
}

答案 1 :(得分:0)

您可以向defaults对象添加新属性,并从中读取。然后可以根据需要覆盖每个实例。试试这个:

// declaration:
var defaults = {
    Start_Count: 0,
    Amount_Result: false,
    Alert_Class: false,
    maximumCharacters: 9
}

// usage:
 if (number_of_characters >= options.maximumCharacters) {
    $("#" + options.Amount_Result).addClass(options.Alert_Class);
} else {
    $("#" + options.Amount_Result).removeClass(options.Alert_Class);
}

Updated fiddle

答案 2 :(得分:0)

使用选项Amount_Limit

$(textarea).CountCharacters({
    Start_Count: 0,
    Amount_Result: "counter",
    Alert_Class: "alert-counter",
    Amount_Limit: 9
});

if(number_of_characters >= options.Amount_Limit)