我想在单选按钮检查时显示ptext,并在另一个单选按钮处于活动状态时隐藏 但是不起作用
这是我的代码:
<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
</head>
<body>
<input id="postageyes" name="type" value="Paint" type="radio">Paint
<br>
<input id="postageno" name="type" value="Sculpture" type="radio">Sculpture
<br>
<input id="postageno" name="type" value="calligraphy" type="radio">calligraphy
<br>
<input id="stext" name="type" value="type" type="text"><br>
<input id="ctext" name="type" value="type" type="text"><br>
<input id="ptext" name="type" value="type" type="text">
<script type="text/javascript">
$('input:radio[name="postage"]').change(function() {
if ($(this).val() == 'Paint') {
$("#ptext").show();
} else {
$("#ptext").hide();
}
});
</script>
</body>
</html>
答案 0 :(得分:1)
您有两个主要问题:
id
的值应该是唯一的。input
与name
没有postage
。ptext
。将name
更改为postage
:
<input id="postageyes" name="postage" value="Paint" type="radio">Paint
<br>
<input id="postageno1" name="postage" value="Sculpture" type="radio">Sculpture
<br>
<input id="postageno2" name="postage" value="calligraphy" type="radio">calligraphy
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="postageyes" name="postage" value="Paint" type="radio">Paint
<br>
<input id="postageno1" name="postage" value="Sculpture" type="radio">Sculpture
<br>
<input id="postageno2" name="postage" value="calligraphy" type="radio">calligraphy
<br>
<input id="stext" name="type" value="type" type="text"><br>
<input id="ctext" name="type" value="type" type="text"><br>
<input id="ptext" name="type" value="type" type="text">
<script type="text/javascript">
$("#ptext").hide();
$('input:radio[name="postage"]').change(function() {
if ($(this).val() == 'Paint') {
$("#ptext").show();
} else {
$("#ptext").hide();
}
});
</script>
此外,最好在加载文档时隐藏它。见上面的例子。
答案 1 :(得分:0)
您必须在jQuery
中传递错误的单选按钮名称,请查看以下代码?
<script type="text/javascript">
$('input:radio[name="type"]').change(function() {
if ($(this).val() == 'Paint') {
$("#ptext").show();
} else {
$("#ptext").hide();
}
});
</script>
答案 2 :(得分:0)
HTML - 修复程序仅在name属性中,因为你的html说&#34; Type&#34;而不是&#34;邮资&#34;
<input id="postageyes" name="postage" value="Paint" type="radio">Paint
<br>
<input id="postageno" name="postage" value="Sculpture" type="radio">Sculpture
<br>
<input id="postageno" name="postage" value="calligraphy" type="radio">calligraphy
<br>
<input id="stext" name="type" value="type" type="text"><br>
<input id="ctext" name="type" value="type" type="text"><br>
<input id="ptext" name="type" value="type" type="text" style="display:none">
Javascript - javascript如果正常工作,我只会给你一个建议并且是,准备好文件
$(document).ready(function() {
$('input:radio[name="postage"]').change(function() {
if ($(this).val() == 'Paint') {
$("#ptext").show();
} else {
$("#ptext").hide();
}
});
});