在表单中,我有一个简单的输入文本字段,用户在其中插入 Headers .
<input type="text" name="title_input" id="title_input" value="" />
我不希望用户可以插入一个完整的大写数字 .
我想 disable 这样的数字:
- LOREM IPSUM DOLOR SIT
想要 enable 这样的数字:
-
Lorem ipsum dolor坐
-
Lorem ipsum 16V dolor C4坐
-
Lorem ipsum dolor坐在Amet
我已经知道将所有文本转换为小写的方法,但不是我想要的 .
<input type="text" onkeyup="this.value=this.value.toLowerCase();" name="title_input" id="title_input" value="" />
要么
<input type="text" pattern="[a-z]+" title="only lowercase" name="title_input" id="title_input" value="" />
如果我输入"LOREM IPSUM 16V DOLOR C4 SIT"我想 not 想要将所有字符转换为小写,如下所示:
- lorem ipsum 16v dolor c4坐
但我想转换成这个:
- Lorem ipsum 16V dolor C4坐
我可以使用html5 javascript或jquery进行此验证 . 怎么做?
谢谢Vasil,这不是我想要的,但如果 Headers 是完整的大写,它可以是显示错误消息的有用替代方法 .
function validateForm() {
var titleEl = document.getElementById('title_input');
var title = titleEl.value;
var upperLength = 0;
var Ncount = 0;
var CharCount = 0;
for (var i = 0; i < title.length; i++) {
if( isNaN(title[i]) ){
upperLength += (title[i] === title[i].toUpperCase() ? 1 : 0);
}else{ Ncount = Ncount + 1; }
}
CharCount = title.length - Ncount;
if (upperLength === CharCount) {
alert('Invalid title');
return false;
}
return true;
};
那么话语,那么检查大写单词?
错误的 Headers 必须返回错误:
-
“卖新的iPAD”
-
“出售CITROEN C4 NEW”
1 回答
jsfriddle