2

尝试选择任何出现文本框的单选按钮,但实际上它不起作用:(。所以这里是jsp页面中的html。

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<style type="text/css">
input[type=text]{
  display : none
}
</style>
<script type="text/javascript" language="text/html" src="../jscript/jquery-1.7.2.js"></script>
<script type="text/javascript" language="javascript" src="../jscript/jquery-1.4.2.min.js"></script>
<script type="text/javascript"> // I 'm using your 1st jquery whose usage is void of css
$('input[type=radio]').change(function() {
    $('input[type=text]').css('display','none');
     $(this).closest('tr').find('input[type=text]').css('display','block');
});
</script>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Test </title>
</head>
<body>
<form action="">
<div align="left" style="color:#2D7EE7">
<table>
<tr>
<td>
<input type="radio" name="radio" value="college"></td> 
<td>College  </td>
<td><input type="text" name="clg"></td></tr>
<tr>
<td><input type="radio" name="radio" value="school"></td>
<td> School </td>
<td><input type="text" name="schl"></td>
</tr>
</table>
</div>
</form>
</body>
</html>

这是jquery的一段代码:

<script type="text/javascript">
$('input[type=radio]').change(function() {
       $('input[type=text]').hide();
       $(this).parent().next().show();
    });
</script>

和CSS:

<style type="text/css">
input[type=text]{
  display : none
}
</style>

但这仍然不起作用:( :(,所以任何猜测我哪里错了。随时发表评论。

4

2 回答 2

3

稍微改成:

            $('input[type=radio]').change(function() {
                $('input[type=text]').hide();
                 $(this).closest('tr').find('input[type=text]').show();
            });

或者

        $(document).ready(function(){
            $('input[type=radio]').change(function() {
                $('input[type=text]').css('display','none');
                $(this).closest('tr').find('input[type=text]').css('display','block');
            });
        });
于 2012-11-26T10:40:54.470 回答
0

首先尝试在页面中只包含一个 JQuery 脚本(删除 jquery-1.4.2.min.js)

$(':radio')相当于$('[type=radio]')

$(document).ready(function(){
    $(':radio').change(function() {
        // Hide all input:text in the table     
        $('input:text', $(this).closest("table")).hide(); 
        $(this).parent().nextAll().find('input:text').show();
    });
});
于 2012-11-26T11:59:01.560 回答