简体   繁体   English

在其他下拉菜单中选择更改下拉菜单值

[英]change drop down value on slection of other drop down

Need experts opinion on below mentioned code, i am not good with javascript. 需要专家对以下提到的代码发表意见,我不擅长javascript。 please help 请帮忙

what i need is,i have 2 drop downs. 我需要的是,我有2个下拉菜单。 one is catid1 and 2nd is catid ... catid loads some values from databases, and catid1 have some manual entries, few of them are same and few are different. 一个是catid1,第二个是catid ... catid从数据库中加载一些值,并且catid1有一些手动输入,它们很少相同,而很少不同。 but i want is when i will select catid1 value from list like "abc" then catid value should be changed to same as catid1 "abc" i have tried some different ways but can't resolve this, any one please suggest either this could be possible or not. 但我想要的是何时我将从“ abc”之类的列表中选择catid1值,然后将catid1值更改为与catid1“ abc”相同。我尝试了多种方法,但无法解决此问题,任何人都建议这可能是可能与否。

<div class="col-md-4">
    <div class="form-group">
        <label for="catId"><?php echo $categoryField; ?></label>
        <select class="form-control" name="catId1" id="catId1" onChange="qt();">
            <option> Select Base Query Type </option>
        </select>
        <span class="help-block"><?php echo $categoryHelp; ?></span>
    </div>
</div>
</div>

<div class="col-md-4">
    <div class="form-group">
    <label for="catId"><?php echo $categoryField; ?></label>
    <select class="form-control" name="catId" id="catId">
        <?php
        $tcat = "SELECT catId, catName FROM categories WHERE userId = ".$userId." AND isActive = 1  ";
        $rest = mysqli_query($mysqli, $tcat) or die('-2'.mysqli_error());
        ?>
        <option value="..."><?php echo $selectOption; ?></option>
        <?php while ($tcatrow = mysqli_fetch_assoc($rest)) { ?>
        <option value="<?php echo $tcatrow['catId']; ?>"><?php echo clean($tcatrow['catName']); ?></option>
        <?php } ?>
    </select>
    <span class="help-block"><?php echo $categoryHelp; ?></span>
    </div>
</div>
</div>

sample code which i have tried is as below as well but it's not working in my case. 我尝试过的示例代码也如下,但在我的情况下不起作用。

<select name="dropdown[]">
  <option value="1">Sony</option>
  <option value="2">Nintendo</option>
  <option value="3">Microsoft</option>
</select>

<select name="dropdown[]">
  <option value="1">Sony</option>
  <option value="2">Nintendo</option>
  <option value="3">Microsoft</option>
</select>

<select name="dropdown[]">
  <option value="1">Sony</option>
  <option value="2">Nintendo</option>
  <option value="3">Microsoft</option>
</select>

var selects = document.querySelectorAll('select[name="dropdown[]"]');

selects[0].addEventListener('change', function () {
    for (var i = 0; i < selects.length; i++) {
        selects[i].value = selects[0].value;
    }
});

You forgot your script tags in the second example: 您在第二个示例中忘记了脚本标记:

<select name="dropdown[]">
   <option value="1">Sony</option>
   <option value="2">Nintendo</option>
   <option value="3">Microsoft</option>
</select>

<select name="dropdown[]">
  <option value="1">Sony</option>
  <option value="2">Nintendo</option>
  <option value="3">Microsoft</option>
</select>

<select name="dropdown[]">
  <option value="1">Sony</option>
  <option value="2">Nintendo</option>
  <option value="3">Microsoft</option>
</select>

<script language="javascript">
    var selects = document.querySelectorAll('select[name="dropdown[]"]');
  selects[0].addEventListener('change', function () {
    for (var i = 0; i < selects.length; i++) {
      selects[i].value = selects[0].value;
    }
  });
</script>

jsfiddle: https://jsfiddle.net/ge127u8d/ jsfiddle: https ://jsfiddle.net/ge127u8d/

Yes you can do it by javascript or Jquery. 是的,您可以通过javascript或Jquery做到这一点。 Its easier in Jquery like 它在Jquery中更容易

function qt() {
  var catId1Val = $('#catId1 :selected').val();
  $("#catId> option").each(function() {
     if (this.value == catId1Val)
     $("#catId select").val(this.value);
  });
}

Check out the following jQuery method: 查看以下jQuery方法:

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM