Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jquery将每个单词的第一个字母大写_Javascript_Jquery_Forms_Uppercase_Capitalize - Fatal编程技术网

Javascript jquery将每个单词的第一个字母大写

Javascript jquery将每个单词的第一个字母大写,javascript,jquery,forms,uppercase,capitalize,Javascript,Jquery,Forms,Uppercase,Capitalize,我在jquery中遇到了一个问题。我想把输入字段中每个单词的第一个字母大写 霉菌代码: 函数大写(){ console.log($('#alertmsg').val().trim()); } 警报消息 单击您应该尝试以下操作: function titleCase(str) { var splitStr = str.toLowerCase().split(' '); for (var i = 0; i < splitStr.length; i++) { //

我在jquery中遇到了一个问题。我想把输入字段中每个单词的第一个字母大写

霉菌代码:

函数大写(){
console.log($('#alertmsg').val().trim());
}

警报消息
单击
您应该尝试以下操作:

function titleCase(str) {
   var splitStr = str.toLowerCase().split(' ');
   for (var i = 0; i < splitStr.length; i++) {
       // You do not need to check if i is larger than splitStr length, as your for does that for you
       // Assign it back to the array
       splitStr[i] = splitStr[i].charAt(0).toUpperCase() + splitStr[i].substring(1);     
   }
   // Directly return the joined string
   return splitStr.join(' '); 
}

编辑:在发布答案之前详细阅读问题很重要;)

我的帖子可能有点复杂,但它是有效的

使用空格分割值,然后通过forEach循环运行分割数组的每个值,找到值字符串的索引[0],并将其更改为大写。然后将字符串的其余部分连接到第一个大写字母

对于显示,将forEach的每个值连接回一个带空格的字符串。修剪以删除尾随和/或前导空格

let$val=$('#alertmsg');
让$display=$(“#display”);
让价值观;
让输出;
$val.blur(函数(值){
让a='';
值=$val.val().trim().split(“”)
forEach(函数(v,i){
输出='';
for(设n=0;n

警报消息

一个简单的正则表达式将使您达到以下目的:

const titleCase=(s)=>s.replace(/\b\w/g,c=>c.toUpperCase());

log(titleCase('helloworld')请尝试以下示例

const string='hello world'
函数大写(字符串){
const words=string.split(“”);
常量输出=words.map(word=>{
const firstLetter=word.substring(0,1).toUpperCase();
常量rest=字子串(1);
返回`${firstLetter}${rest}`
})
返回输出。连接(“”)
}

console.log(大写(字符串))
基于@Robby Cornelissen的答案:

以下代码将执行以下操作:

  • 从输入字段中获取值
  • 将每个单词的第一个字符更新为大写
  • 最后,用更新后的值更新字段
函数大写(){
常量titleCase=(s)=>s.replace(/\b\w/g,c=>c.toUpperCase());
const updatedValue=titleCase($('#alertmsg').val().trim());
$('#alertmsg').val(updatedValue);
}

警报消息

单击
这可能会帮助您如何:这是否回答了您的问题?这是优雅的方式来实现骆驼壳!荣誉谢谢我试试你的代码好的谢谢我试试好的谢谢让我检查一下谢谢你的回复我试试@MHasan行吗\
console.log(titleCase("hello world")); //Hello World