我可以在css中指定maxlength吗?

我可以在css中指定maxlength吗?

问题描述:

我可以使用CSS中的某些东西替换maxlength属性吗?我可以在css中指定maxlength吗?

<input type='text' id="phone_extension" maxlength="4" /> 

不需要。这需要在HTML中完成。如果你需要,你可以用Javascript设置值。

不符合CSS,no。

编号

maxlength是行为。

CSS是用于样式。

这就是为什么。

+0

此外,CSS可以全局应用于任何标签,因此将maxlength属性应用于div或img等没有任何意义。 – 2009-09-01 15:44:47

+3

但是,如果您想将maxlength属性应用于输入类型(例如名字,城市,州),并且您可以通过网站在各个地方拥有多个输入实例。能够定义一个班级(例如,'FirstName'),并且他们将该类应用于所有名字输入 Catchops 2011-12-08 14:42:29

我不认为你可以,CSS应该描述页面看起来不怎么样,所以即使你可以,也不应该如何使用它。

也许你应该考虑使用JQuery来将常用的功能应用到你的表单组件?

不支持CSS,但您可以使用JavaScript来模拟和扩展/自定义所需的行为。

您可以使用jQuery这样的:

$("input").attr("maxlength", 4) 

这里是一个演示:http://jsfiddle.net/TmsXG/13/

使用$("input").attr("maxlength", 4) 如果你正在使用jQuery版本< 1.6 和$("input").prop("maxLength", 4) 如果你正在使用jQuery 1.6版+。

正如其他人已经回答,目前没有办法将maxlength直接添加到CSS类。

但是,这种创造性的解决方案可以实现您正在寻找的东西。

我了jQuery中,我在现场参考(为的Site.Master ASP)

运行段看到它在行动文件名为maxLengths.js,效果很好。

的jQuery,CSS,HTML:

$(function() { 
 
    $(".maxLenAddress1").keypress(function (event) { 
 

 
     if ($(this).val().length == 5) { /* obv 5 is too small for an address field, just want to use as an example though */ 
 
      return false; 
 
     } else { 
 
      return true; 
 
     } 
 

 
    }); 
 
});
.maxLenAddress1{} /* this is here mostly for intellisense usage, but can be altered if you like */
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
 

 
<input type="text" class="maxLenAddress1" />

使用这个的好处:如果决定最大长度为这种类型的字段需要被推出或在您的整个应用程序,你可以改变它在一个地方。适用于各种领域,如客户代码,全名字段,电子邮件字段,应用程序中常见的任何字段。

+1

此代码非常容易复制和粘贴多个字段类型。我保留一个名为“maxLengths.js”的单独jQuery文件,并将其包含在我的站点主文件中。试试看,这很方便! – 2015-04-02 15:01:53

+0

仅仅因为你使用了一个HTML类,它不是CSS。 – nyuszika7h 2017-06-01 09:36:08

+0

@ nyuszika7h非常感谢您对我答案的赞赏。我会争论,虽然我没有应用任何样式的元素,我仍然在我的解决方案中使用级联样式表,因此正在使用CSS。另外我已经更新了我的答案以反映你的观察。 – 2017-06-01 15:17:51