JavaScript/jQuery和自定义表单元素

JavaScript/jQuery和自定义表单元素,javascript,jquery,jquery-ui,input,niceforms,Javascript,Jquery,Jquery Ui,Input,Niceforms,大家好, stackoverflow一直是编程相关问题的好资源。这是我第一次问mysqlf的问题,因为我绝对找不到好的解决方案。所以,如果我忘记了什么,请原谅我——我愿意学习- 我已经使用JS和jQuery很久了。jQuery的好处是,有很多资源和插件可以满足各种需要,您可以开箱即用。 然而,我看到很多网站使用非常好的表单元素样式输入:文本/密码、收音机、复选框、下拉列表等。但是我找不到任何jQuery插件或JavaScript框架,它们提供了设计/样式表单元素的可能性。它们要么缺乏元素支持,要

大家好,

stackoverflow一直是编程相关问题的好资源。这是我第一次问mysqlf的问题,因为我绝对找不到好的解决方案。所以,如果我忘记了什么,请原谅我——我愿意学习-

我已经使用JS和jQuery很久了。jQuery的好处是,有很多资源和插件可以满足各种需要,您可以开箱即用。 然而,我看到很多网站使用非常好的表单元素样式输入:文本/密码、收音机、复选框、下拉列表等。但是我找不到任何jQuery插件或JavaScript框架,它们提供了设计/样式表单元素的可能性。它们要么缺乏元素支持,要么非常不稳定

我最近开始使用的jQueryUI不支持文本输入和下拉菜单。 NiceForms相当整洁,但在某些浏览器中有点不稳定,而且相当粗糙。它将一些元素替换为各种绝对位置的div,这有时会完全破坏我的布局,或者在浮动时无法工作等等。。此外,它还缺少许多基本属性,如某些元素的宽度。 我正在寻找一种方式,以图形方式设计它们。所以我不想仅仅通过CSS修改它的边框。你知道我可以用什么资源吗? 我会自己编写,但我有点害怕庞大的工作,因为让自定义表单字段在所有常用浏览器上工作可能会非常麻烦


除了jQuery UI和NiceForms之外,还有谁知道其他一些仍然保持或稳定的方法吗?

这里有一公吨jQuery插件用于样式化表单:

还包括:

轰!50多个表单蒙皮jQuery插件!

从上面看,看起来很漂亮。以下是有关使用它的教程:
有很多解决方案

再想一想 在CSS功能之外设计表单元素的样式有什么特别的原因吗?这些功能随着时间的推移而不断增长,想想CSS3,实际上会从表单可用性中受益吗?你想做什么样的样式是CSS做不到的

还有一件事:我建议您考虑一下您的用户,他们习惯于常见的HTML表单元素及其功能,以及它们在屏幕上的显示方式。如果你完全改变了它们的外观,从可用性的角度来看,这可能意味着你的表单会让它变得更糟。所以一些样式是可以的,过多的样式可能会使表单无法使用

但是,如果您只需要自定义表单字段,则通常可以将它们作为jQuery插件获取,但它们通常基于现有的HTML输入元素

功能丰富,风格一致
但是,如果您想了解丰富的表单功能,总会有一些非常一致的样式,提供了很多甚至更多的元素和功能。而且非常专业,自2.0以来一直非常好,而且正在变得更好。

我同意,样式化的输入元素样式超出了css的功能,95%的时候这样做是错误的。考虑到你可以用css环绕边框、更改背景颜色、添加阴影等,使用jquery来做这件事是个不错的坏主意,除非你对质量控制和测试有100%的把握。出于一致性的原因,我得到了作者要求的印象。我以前见过ExtJS,看起来很不错——但也就是说,它不是自由和开放源码软件,而且在商业上使用起来相当昂贵。在我看来,这是一个合理的问题——跨浏览器手动设置表单样式可能需要相当长的时间,有时你只需要一个快速的方法来处理一些客户端的尖叫声,让它更漂亮!!!看着你。。。只有我的两个谢谢你的回答。我得承认,我同意你的看法。我想我会坚持使用CSS3,并以有效的方式设计它们。我只是希望,有一种很好的方式来支持IE6之类的东西,而不必编写和调试各种不同的样式表。在这种情况下,我唯一想到的是替换-字段并使用图形重新构造它们。不过,我认为使用CSS3并为旧浏览器显示常规输入字段应该可以做到这一点。谢谢:-@aendrew:没错,但在专业付费项目中,ExtJS的价格是可以接受的。他们过去也有开源项目的许可证,但我不知道他们现在是否还有。@mario:既然你提到了IE6:我建议你检查你的日志,到底有多少用户还在使用它。检查分析我可以说上个月只有0.3%的用户使用了IE6。我认为支持他们的努力不值得。表格同样适用于他们。他们只是看起来有点不一样;谢谢安卓和gearsdigital。我感谢你的帮助,并向我指出那些文章。但我很希望得到一些反馈,以防你已经使用了其中的一些。大多数插件/扩展只涉及几个输入字段。但我会尝试一下!