大写不包含某些单词的字段

时间:2020-01-03 15:28:53

标签: javascript

我有这段代码可以大写页面标题,并考虑到介词。我希望列表在其符号旁边即被忽略,即:,-或(

目前,代码将执行以下操作:“鲜红的天空:德国BF ME-109-Ace”

但我希望它执行以下操作:“鲜红的天空:德国BF ME-109-Ace”

// Capitalize Fields with Prepositions
function makeTitle(str, glue){
    glue = !!glue ? glue : ['of', 'for', 'and', 'a', 'the', 'is'];
    var first = true;
    return str.replace(/(\w)(\w*)/g, function(_, i, r) {
        var j = i.toUpperCase() + (r != null ? r : '').toLowerCase();
        var result = ((glue.indexOf(j.toLowerCase()) < 0) || first) ? j : j.toLowerCase();
        first = false;
        return result;
    });
};

$('#product_description_product').on('input', function() {
    $(this).val( makeTitle($(this).val()))
})

0 个答案:

没有答案