0

是否可以有一组非活动字段,如果单击其中一个字段,则某些字段将变为必需字段并运行某些代码段?例如,您有三个显示的字段:

<input type="text" id="gov1" name="gov1">

<input type="text" id="parentb" name="parentb">

<input type="checkbox" name="child" id="child">

所有这三个字段最初都是不活动的;但是假设您单击其中一个字段,它现在使其余字段处于活动状态和强制状态,并且某些代码段在字段“parentb”上运行,并且它的属性为只读。

window.onload = function(event)
{
    var $input2 = document.getElementById('dec');
    var $input1 = document.getElementById('parentb');
    $input1.addEventListener('keyup', function()
    {
        $input2.value = $input1.value;
    });
}

我已经做了一些搜索,但我似乎找不到任何适用于这种特定情况的东西,而且我对 JavaScript 还是很陌生,所以任何形式的帮助都会很棒。这完全可能使用 JavaScript 吗?或者类似的事情可能吗?

4

1 回答 1

0

您正在寻找的这种方法称为“链式选择”方法。

例如下面使用 jQuery 框架:

<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
</head>
<body>
<form action="" method="get">
    <label>
    <input name="Government" type="checkbox" value="">Government</label>
    <br>
    <label>
    <input name="Parent" type="checkbox" id="parent_child_group" value="">Parent</label>
    <br>
    <label>Name of Child
    <input type="text" name="parent_child" value="" class="parent_child_group"></label>
    <br>
    <label>Other
    <input type="text" name="parent_other" value="" class="parent_child_group"></label>
</form>

<script type="text/javascript">
    $(document).ready(function () {
         $(function() {
             enable_cb();
             $("#parent_child_group").click(enable_cb);
         });

         function enable_cb() {
             if (this.checked) {
                 $("input.parent_child_group").removeAttr("disabled");
             } else {
                 $("input.parent_child_group").attr("disabled", true);
             }
         }
    });        
    </script>
    </body>
    </html>

JSFiddle 上的工作示例:http: //jsfiddle.net/farondomenic/fg7p8/1/

于 2013-05-21T18:30:11.483 回答