Доза, кто-нибудь знает, как я могу сделать первое слово, которое всегда пишется с заглавной буквы?
function makeTitle(slug) {
var preps = ['and', 'a', 'the', 'for', 'i', 'to'];
return $.map(slug.split(' '), function(k, v) {
if (k) {
var word = k.match(/\w*/g)[0].toLowerCase();
var letter = $.inArray(word, preps) >= 0 ? k[0].toLowerCase() : k[0].toUpperCase();
return letter + k.slice(1);
} else {
return k;
}
}).join(' ');
}
$('#product_description_product').change(function() {
$(this).val(makeTitle($(this).val()))
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="control-group">
<label class="control-label cm-required" for="product_description_product">Product Name:</label>
<div class="controls">
<input type="text" name="products_data[0][product]" id="product_description_product" class="span12" />
</div>
</div>
Он должен исключать некоторые слова из заглавных букв (здесь and
и a
и т. Д.).
Он всегда должен делать ихв верхнем регистре, если они после или :
или -
или первые слова.