Javascript 使用jquery隐藏div的所有子元素(文本字段、select、checkbox、radio)
我在jsp页面中有几个表单元素和一个单选按钮,在div标记中有几个其他表单元素(文本字段、文本区域、选择、复选框等)。现在,我的要求是在选择div标记外侧的单选按钮时隐藏div的所有子元素 这是我的jsp代码Javascript 使用jquery隐藏div的所有子元素(文本字段、select、checkbox、radio),javascript,jquery,html,css,jsp,Javascript,Jquery,Html,Css,Jsp,我在jsp页面中有几个表单元素和一个单选按钮,在div标记中有几个其他表单元素(文本字段、文本区域、选择、复选框等)。现在,我的要求是在选择div标记外侧的单选按钮时隐藏div的所有子元素 这是我的jsp代码 <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <%@ taglib prefix="tags" uri="/struts-
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="tags" uri="/struts-tags"%>
<html>
<head>
<link rel="stylesheet" href="jquery/jquery-ui.css">
</head>
<body>
<tags:form name="someForm" action="someAction" method="post">
<tags:textfield key="someActionClass.transactionDate" id="datepicker" label="Transaction Date" />
<tags:radio list="#{'1':'One Time','2':'Recurring'}" id="tType" lable="Transaction Type" name="recurringOrOneTime"></tags:radio>
<div class="hideTesting">
<tags:textfield name="testingFiled" lable="testing"/>
<tags:textfield name="testingFiled1" lable="testing"/>
<tags:textfield name="testingFiled2" lable="testing"/>
</div>
<script src="jquery/external/jquery/jquery.js"></script>
<script src="jquery/jquery-ui.js"></script>
<script>
$( "#datepicker" ).datepicker({
inline: true
});
$("input[name='recurringOrOneTime']").change(function(){
var checkedVal=$(this).val();
if(checkedVal=='1')
{
$("input[name='testingFiled']").toggle();
$("input[name='testingFiled']").prop("disabled", true);
}
else
{
$("input[name='testingFiled']").toggle();
$("input[name='testingFiled']").prop("disabled", false);
}
});
</script>
</tags:form>
</body>
</html>
就这样吧:
$("input:radio").click(function () {
$(".hideTesting").hide();
});
使用此代码:
$("#tType").click(function () {
$(".hideTesting").hide();
});
不使用
$(“.hideTesting”).hide()的原因代码>隐藏div的所有子元素
那么为什么不隐藏div呢?$('divid').children().hide()
?出于测试目的,我在div标记中放置了一个纯文本。我使用了相同的$(“.hideTesting”).hide();用于隐藏,但不是隐藏元素。它只是隐藏div标记中的纯文本。我不确定这到底是什么原因:)@A.Wolff我不明白OP为什么要把事情复杂化。也许是新手?但也许OP有一些特定的风格应用于DIV,比如设定他想要保持的大小,但谁知道呢@我很抱歉。但是我已经尝试了上面的代码,但是它不起作用。我在div标记中放置了一个纯文本和一个文本框,并使用了上述代码。它只是隐藏纯文本,而不是隐藏文本box@GhostRider显示使用我的解决方案的代码?
$("#tType").click(function () {
$(".hideTesting").hide();
});