Javascript 在CapsLock打开的情况下将输入更改为大写

Javascript 在CapsLock打开的情况下将输入更改为大写,javascript,php,css,html,Javascript,Php,Css,Html,我只想知道,是否可以在某个输入字段上自动将输入更改为大写,用户在该字段中输入了大写锁定的值 <input placeholder="Brand Name" style="text-transform: capitalized" type="text" /> 上的大写字母=测试名称 应为:测试名称 <input placeholder="Brand Name" style="text-transform: capitalized" type="text" />

我只想知道,是否可以在某个
输入
字段上自动将输入更改为
大写
,用户在该字段中输入了大写锁定的值

 <input placeholder="Brand Name" style="text-transform: capitalized" type="text" />

上的大写字母=测试名称

应为:测试名称

 <input placeholder="Brand Name" style="text-transform: capitalized" type="text" />

关闭Caps=测试名称

默认值:测试名称

 <input placeholder="Brand Name" style="text-transform: capitalized" type="text" />
我知道有些名字看起来像是
Reader Van der Bank
,不是所有的名字部分都大写,但我还是想知道是否可能。谢谢

备选方案:我想我可能正在使用php函数将所有内容转换为小写,然后大写

style="text-transform: capitalize"
(问题已编辑。新答案。)

给你的输入一个id,在这个例子中,让我们假设它被称为“theInputId”。 然后向它添加一个onkeypress事件,并调用下面列出的函数脚本

<input placeholder="Brand Name" style="text-transform: capitalized" 
 type="text" id="theInputId" onkeypress="capsLock(event)">


<script>
//Script to check if Caps Lock is on.
function capLock(e){
kc = e.keyCode?e.keyCode:e.which;
sk = e.shiftKey?e.shiftKey:((kc == 16)?true:false);
if(((kc >= 65 && kc <= 90) && !sk)||((kc >= 97 && kc <= 122) && sk)){
document.getElementById('theInputId').style.textTransform = 'lowercase'
document.getElementById('theInputId').style.textTransform = 'capitalize'
}
}
</script>

//用于检查Caps Lock是否已启用的脚本。
功能盖锁(e){
kc=e.keyCode?e.keyCode:e.which;
sk=e.shiftKey?e.shiftKey:((kc==16)?真:假);
如果((kc>=65&&kc=97&&kc
(问题已编辑。新答案。)

给你的输入一个id,在这个例子中,让我们假设它被称为“theInputId”。 然后向它添加一个onkeypress事件,并调用下面列出的函数脚本

<input placeholder="Brand Name" style="text-transform: capitalized" 
 type="text" id="theInputId" onkeypress="capsLock(event)">


<script>
//Script to check if Caps Lock is on.
function capLock(e){
kc = e.keyCode?e.keyCode:e.which;
sk = e.shiftKey?e.shiftKey:((kc == 16)?true:false);
if(((kc >= 65 && kc <= 90) && !sk)||((kc >= 97 && kc <= 122) && sk)){
document.getElementById('theInputId').style.textTransform = 'lowercase'
document.getElementById('theInputId').style.textTransform = 'capitalize'
}
}
</script>

//用于检查Caps Lock是否已启用的脚本。
功能盖锁(e){
kc=e.keyCode?e.keyCode:e.which;
sk=e.shiftKey?e.shiftKey:((kc==16)?真:假);

如果((kc>=65&&kc=97&&kc是否要在输入中输入所有大写的文本?那么您可以在css中使用text-
transform:uppercase
,如果您想在键入时更改它,您可以使用
toUpperCase()
在该输入的
keyup
上。

是否要在输入中输入所有大写的文本?然后您可以在css中使用text-
transform:uppercase
,如果您想在键入时更改它,您可以使用
toUpperCase()
打开该输入的
键。

如果没有CSS解决方案,这里有一个javascript函数可以实现这一点

var id=document.getElementById(“测试”);
函数更改(){
var arr=id.value.split(“”).map(函数(x){
返回x.charAt(0).toUpperCase()+x.slice(1).toLowerCase()
});
id.value=arr.join(“”);
}
id.addEventListener(“变更”,变更);
id.addEventListener(“键控”,更改);

如果没有CSS解决方案,这里有一个javascript函数可以实现这一点

var id=document.getElementById(“测试”);
函数更改(){
var arr=id.value.split(“”).map(函数(x){
返回x.charAt(0).toUpperCase()+x.slice(1).toLowerCase()
});
id.value=arr.join(“”);
}
id.addEventListener(“变更”,变更);
id.addEventListener(“键控”,更改);

@epascarello可能是我告诉用户caps已打开的情况?@epascarello可能是我告诉用户caps已打开的情况?抱歉,大写字母无效,我编辑了我的问题..是内联样式的拼写错误吗抱歉,大写字母无效,我编辑了我的问题..是内联样式的拼写错误吗
var id=document.getElementsByClassName(“测试”)
按类获取值?我想在一个基于多个输入字段的类上实现这一点,而不是向每个输入字段添加id,以重复。@Ylama您是否将类设置为
测试
?是的,我将..并将其添加到多个输入字段。``以及``为什么这对
var id=document.getElementsBy不起作用ClassName(“test”);
按类获取值?我想在一个类上实现这一点,该类基于多个输入字段,而不是向每个输入字段添加id,这是重复的。@Ylama您是否将类设置为
test
?是的,我将..并将其添加到多个输入字段。`and``