猿问

当从组合框中选择了多个值时,如何显示文本框

我想仅在选择组合框的值时显示文本框,否则应将其隐藏。我需要在同一页面中使用多个。感谢您的帮助。


<label>1- Are there are friends/ neighbours/ family providing help ?</label>

<select class="form-control" name="formlist[any_friends_relatives_help3]" class="selincrease" id="edition"

  onchange="func()" style="height: 5%;">

  <option value="">choose...</option>

  <?php

      if (isset($forms['any_friends_relatives_help3'])) {

      echo  '<option selected="selected" value="' . $forms['any_friends_relatives_help3']. '" disabled>' . $forms['any_friends_relatives_help3'] . '</option>' ;

    echo '<option value="<?=$forms[\'any_friends_relatives_help3\'] ?? \'Yes\'?>">Yes</option>' ;

  echo ' <option value="<?=$forms[\'any_friends_relatives_help3\'] ?? \'No\'?>">No</option>';

  ?>

  <?php  }

    else {?>

  <option value="<?=$forms['any_friends_relatives_help3'] ?? 'Yes'?>">Yes</option>

  <option value="<?=$forms['any_friends_relatives_help3'] ?? 'No'?>">No</option>

  <?php }?>

</select>

<div id="trhide">

  <label>Please Specify:</label><br />

  <textarea class="form-control" name="formlist[specify_help3]"><?=$forms['specify_help3'] ?? ''?></textarea>

</div>


<script type="text/javascript">

  function func() {

    var elem = document.getElementById("edition");


    if (elem.value == "Yes") {

      document.getElementById("trhide").style.visibility = "visible";

    } else {

      document.getElementById("trhide").style.visibility = "hidden";

    }

  }

</script>

如果我仅使用上面的一个,则它起作用,但是当我将另一个用于另一个选择时,它们都不起作用。第二个代码如下:


<label>Shopping</label>

<select class="form-control" name="formlist[shopping3]" class="selincrease" id="change" style="height: 5%;"

  required="required">

  <option value="">choose...</option>

  <?php

            if (isset($forms['shopping3'])) {

            echo  '<option selected="selected" value="' . $forms['shopping3']. '" disabled>' . $forms['shopping3'] . '</option>' ;

          echo '<option value="<?=$forms[\'shopping3\'] ?? \'Self\'?>">Self</option>' ;

  echo ' <option value="<?=$forms[\'shopping3\'] ?? \'Other\'?>">Other</option>';



DIEA
浏览 181回答 1
1回答

慕田峪9158850

您不能具有相同名称的多个功能。另外,函数名称绝对不能是“ func”,因为它们实际上是非描述性的。您也可以将两个函数合并为一个,例如:function changeVisibility(id1, id2, checkValue) {&nbsp;var elem = document.getElementById(id1);&nbsp;if(elem.value == checkValue) {&nbsp; &nbsp; document.getElementById(id2).style.visibility = "visible";&nbsp;} else {&nbsp; &nbsp;document.getElementById(id2).style.visibility = "hidden";&nbsp;}}
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答