Сделать значение выпадающего списка равным значению другого выпадающего списка при изменении - PullRequest
0 голосов
/ 14 мая 2018

Пожалуйста, помогите мне.Я пытаюсь написать то, что должно быть простой строкой jQuery, которая меняет значение раскрывающегося списка состояний на = ТОЛЬКО раскрывающийся список действий лидера, когда изменяется значение раскрывающегося списка лидерства.Я возился с этим уже около часа и, похоже, не могу заставить его работать.Также HTML не может быть изменен, поэтому добавление атрибута onChange не вариант.Я должен быть в состоянии реализовать решение, просто добавив JS на страницу.Вот код, который у меня есть.Любая помощь очень ценится.

 <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

 <script>
 function myFunction() {
 $("#leadershipAtc").change(function () {

     document.getElementById('status').text = $('option:selected', this).text();
 });
 }
 </script>

 <body>

 Status : 
 <select id="status">
   <option value="A">A
   <option value="B">B
   <option value="C">C
   <option value="D">D
</select>

<p></p>

 Leadership Action : 
 <select id="leadershipAct">
   <option value="A">A
   <option value="B">B
   <option value="C">C
   <option value="D">D
 </select>

 </body>
 </html>

Ответы [ 2 ]

0 голосов
/ 14 мая 2018

Спасибо, ребята, за ваш пост, они были самыми полезными.Однако, чтобы заставить это работать в SharePoint, мне пришлось использовать немного другой подход, не совсем уверенный, почему.В любом случае, вот код, который мне удалось заставить работать в SharePoint 2013.

<script type="text/javascript">
$(function() {

$("#leadershipAct").change(function() {
if ($('option:selected', this).text() == "A") {
    $('#status').val($(this).val());
} else if ($('option:selected', this).text() == "B") {
    $('#status').val($(this).val());
    } else if ($('option:selected', this).text() == "C") {
    $('#status').val($(this).val());
} else if ($('option:selected', this).text() == "D") {
    $('#status').val($(this).val());
} else {
}
});
});
</script>
0 голосов
/ 14 мая 2018

Это то, чего вы хотите достичь?

// You don't need to put the code in a function.
// Btw, in your code, your function was never called!
$("#leadershipAct").on('change', function() {
  // Taking the .val() of this select, and put it in the status one.
  $('#status').val($(this).val());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<body>

  Status :
  <select id="status">
    <option value="A">A</option>
    <option value="B">B</option>
    <option value="C">C</option>
    <option value="D">D</option>
  </select>

  <p></p>

  Leadership Action :
  <select id="leadershipAct">
    <option value="A">A</option>
    <option value="B">B</option>
    <option value="C">C</option>
    <option value="D">D</option>
  </select>

</body>

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...