使用 css 或 jquery 隐藏标签和输入字段
在这个小提琴中,我有我的表格的一部分: http://jsfiddle.net/ZXSKH/55/
我试图隐藏一个标签和 1 个输入通过选择带有 css 的类并设置 display:none 来默认设置字段。这适用于选择“输入”,但是对于标签来说,这不起作用,因为在其他地方我使用 display:inline-block 或 block ,然后再次使标签可见。
我应该使用 jquery 隐藏标签和输入字段,而不是在 css 中执行此操作吗? 有人可以帮我吗?
In this fiddle i have a part of my form:
http://jsfiddle.net/ZXSKH/55/
I am trying to hide a label and 1 input field on default by selecting the class with css and setting display:none. This works for selecting the "input" however for the labels this isn't working since Somewhere else I use display:inline-block or block wich then again makes the labels visible.
Instead of doing this in the css, should i hide the label and inputfield with jquery?
Could someone help me with that?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
如果您在想要隐藏的字段周围放置一个
div
标记,您的生活会更轻松,这样,您的 jQuery 代码就可以显示/隐藏该特定的 div(给它一个 id 来定位它)。这样,将显示设置为内联块或标签上的块不会产生任何影响,因为包含标签的 div 已经隐藏。You would make your life easier if you placed a
div
tag around the fields you wanted to hide, that way, your jQuery code can show/hide that specific div (give it an id to target it). That way, setting display to inline-block or block on the labels won't make a difference because your div containing the label is already hidden.正如我在代码和 html 中看到的那样,您添加了所有控件,而没有任何容器。使用 table 或 div。
我更喜欢使用
。如果您想遵循相同的操作,请按照这两个链接作为参考来重置特定项目的 css,然后将 css 中的
visibility
设置为隐藏:Jquery:如何检查元素是否具有某种 css 样式
http://api.jquery.com/css/
将隐藏控件放在 div 中,然后就可以使用$('#divName1').hide() 或 $('#divName1').show() 来实现您的功能。
您可以生成动态 html 内容,而不是在单击选中的项目时指定一组控件。使用类似于 jquery 的
insertAfter
方法。您可以通过以下链接获得更多详细信息:
http://api .jquery.com/?ns0=1&s=insertafter&go=
选择 InsertAfter 查看详细示例以简化流程。
As i have seen in you code and html, you are adding all the control without any container. use either table or div.
i prefer to use
<div>
. if you want to follow with the same then follow these two links as reference to reset your css for particular item and then set itsvisibility
in css to hidden as:Jquery: How to check if the element has certain css style
http://api.jquery.com/css/
put your hidden controls in div and then you can use $('#divName1').hide() or $('#divName1').show() to implement your functionality.
you can generate dynamic html content rather than specifying one set of control on the click of checked item.. using
insertAfter
like methods of jquery.you can get more detail about this on following link:
http://api.jquery.com/?ns0=1&s=insertafter&go=
Select InsertAfter to detail examples to simplify your process.
您可以使用 jquery 隐藏标签和输入字段。
使用 jquery 可以很容易地完成,
例如。
$(id).css('display','none');
或者您也可以使用 jquery hide 方法,
例如。
You can use jquery to hide label and inputfield.
It can be done very easily using jquery
Eg.
$(id).css('display','none');
or You can also use jquery hide method
Eg.
不过JavaScript!尝试一下。
javascript though! give a try.
您不必在这里使用 javascript 来解决看起来只是显示问题。更好的做法是使用 css 找到解决方案,而不是使用错误的工具来解决问题。为什么需要将标签显示设置为在其他地方屏蔽?是否可以更具体地针对需要显示的特定标签,而隐藏其余标签?
You shouldn't have to use javascript here to solve what appears to be only a display issue. It's better practice to find a solution with css rather than using the wrong tool to solve the problem. Why do you need to set the label display to block elsewhere? Can that be made more specific to a particular label that needs to show, leaving the rest to be hidden?
您可以使用 !important 覆盖 display: inline-block 等,因此创建一个
适用于您的标签或其他内容的
类,如果您想删除它(使其可见),请使用 jquery
you could override the display: inline-block etc with !important, so create a class
apply to your label or whatever
and if you want to remove it (make it visible), use jquery