单击单选按钮时更改内容的更短方式

时间:2012-01-14 23:24:21

标签: jquery radio-button

我想知道是否有更短的方法:

    <script>
       $(document).ready(function() {           
        $("#deliverer").change(function() {
         $("#opttuser").hide();
         $("#optdeliverer").show();
        });
        $("#tuser").change(function() {
         $("#optdeliverer").hide();
         $("#opttuser").show();
       });
     });
    </script>
    <input type="radio" id="deliverer" value="deliverer" name="type"/>
<input type="radio" name="type" value="tuser" id="tuser" />
    <div id='optuser'>//some input fields</div>
    <div id='optdeliverer'>//some other input fields

它没有任何问题,但我觉得这可以用更短的方式完成。那么有没有?

1 个答案:

答案 0 :(得分:5)

尝试这样的事情......我添加了checked并使用css(demo)隐藏了相反的div:

HTML

<input type="radio" id="deliverer" value="deliverer" name="type" checked />
<input type="radio" name="type" value="tuser" id="tuser" />
<div id='optuser'>//some input fields</div>
<div id='optdeliverer'>//some other input fields</div>

$(document).ready(function() {
    $("#deliverer, #tuser").change(function() {
        $("#optdeliverer, #optuser").toggle();
    });
});

CSS

#optdeliverer { display: none; }