Javascript 达到最大长度限制时更改输入字段样式
我创建了一个具有文本输入字段和Javascript 达到最大长度限制时更改输入字段样式,javascript,jquery,css,maxlength,Javascript,Jquery,Css,Maxlength,我创建了一个具有文本输入字段和maxlength设置的联系人表单。我希望当输入字符大于10时,使输入字段显示为红色 <form action="contact.php"> Username: <input type="text" name="name" maxlength="10"><br> <input type="submit" value="Submit"> </form> 用户名: 您可以使用以下内容: $("na
maxlength
设置的联系人表单。我希望当输入字符大于10
时,使输入字段显示为红色
<form action="contact.php">
Username: <input type="text" name="name" maxlength="10"><br>
<input type="submit" value="Submit">
</form>
用户名:
您可以使用以下内容:
$("name[usrname]").change(function(){
if($(this).val().length > 10){
$(this).css("color","red");
}
});
function checkUser(user){
var number = user.length;
if(number>10){
document.getElementById("username").style.borderColor = "red";
// <!-- document.getElementById("submit").disabled = true; Disable submit button -->`enter code here`
document.getElementById("maxReached").style.visibility = "visible";
}else {
document.getElementById("maxReached").style.visibility = "hidden";
document.getElementById("username").style.borderColor = "black";
}
}
您可以在CSS中使用选择器:invalid
input:invalid {
border: 1px solid #FF0000;
}
这将为所有输入元素提供一个红色边框,只要它们不符合标准(尽管如其中一条注释中所述,输入字段中的字符数永远不能超过“maxlength”)。属性maxlength=“10”
不允许插入超过10个字母。无论如何,您可以这样做:
$("name[usrname]").change(function(){
if($(this).val().length > 10){
$(this).css("color","red");
}
});
function checkUser(user){
var number = user.length;
if(number>10){
document.getElementById("username").style.borderColor = "red";
// <!-- document.getElementById("submit").disabled = true; Disable submit button -->`enter code here`
document.getElementById("maxReached").style.visibility = "visible";
}else {
document.getElementById("maxReached").style.visibility = "hidden";
document.getElementById("username").style.borderColor = "black";
}
}
功能检查用户(用户){
var number=user.length;
如果(数量>10){
document.getElementById(“用户名”).style.borderColor=“红色”;
//”“在这里输入代码`
document.getElementById(“MaxReach”).style.visibility=“可见”;
}否则{
document.getElementById(“maxReach”).style.visibility=“hidden”;
document.getElementById(“用户名”).style.borderColor=“黑色”;
}
}
用户名:
你的标题太长了
这是不可能的,因为它首先不允许文本长度超过maxlength。我在javaScript中添加的类无效?实际上TylerH是正确的,maxlength限制了您可以输入的字符数,因此您必须使用Matheus208的解决方案并使用jQuery(或javaScript,以您喜欢的为准)。我会修改我的答案。超级,我会补充,除了指导红色文本“你的标题太长”,并指出剩余字符的数量,如何?有几种方法。这里有一个:-在javascript函数的if部分添加以下行:document.getElementById(“maxreach”).style.visibility=“visible”
-在输入文本表单旁边添加另一行:您的标题太长
我们添加了一条不可见的行,当字符数超过限制时会显示该行。当然,您必须在函数的else中添加一行,以便使用visibility=“hidden”
@user3831928再次使标签不可见。如果您有问题,我可以编辑上一个答案中的代码。我希望您在上一个答案中进行更改answer@user3831928完成。希望这是你需要的!一点名声是公认的:)