如何在foreach循环内的文本框中获取下拉选择的选项文本

节日

目前我在foreach循环内有多个文本框和多个下拉列表,具有相同的 id。我试图将dropdown选定的文本更改为相关的textbox. 目前它仅适用于第一个文本框和第一个下拉列表。可能是什么原因?

在此处输入图片说明

这是我的代码

<div class="child-name-col">
    <div id="header-type" class="foodmenu-dispay-view-header headerbody clearfix">
    @foreach ($showenMenus as $key => $element)
        <div class="daily-col daily-col-200 reset-padding margin-right-20 parent-div">
        <input type="text" id="newmeal"  name="newmeal[]" value="{{ $element->food }}">
        <input type="hidden" id="mealtime"  name="mealtime[]" value="{{ $element->id }}">
        <div class="col-md-12 margin-top-5 dropdown" style="padding-left: 0px; padding-right: 0px;">
             <select id="dropdown"  name="dropdown[]"  class="form-control foodrecipe_item dropdown_item" >
                 <option value="">None</option>
                  @foreach ($meal_list as  $element)
                     <option value="{{ $element->id }}">{{ $element->title }}</option>
                  @endforeach
              </select>

           </div>
        </div>
    @endforeach

 </div>

javascript

$(document).ready(function () {
    $("#dropdown option").filter(function () {
         return $(this).val() == $("#newmeal").val();
    }).attr('selected', true);


    $("#dropdown").on("change", function () {
         $("#newmeal").val($(this).find("option:selected").text())
    });
});
蒂姆·莫顿

解决此问题的三种方法:

  1. 使用 a.class而不是#id
  2. 唯一命名每个元素。
  3. 两者都有一点...

这个例子不在我的脑海中,旨在为您指出一个可能的解决方案。它可能开箱即用,也可能不会开箱即用。

<div class="child-name-col">
    <div id="header-type" class="foodmenu-dispay-view-header headerbody clearfix">
    @foreach ($showenMenus as $key => $element)
        <div class="daily-col daily-col-200 reset-padding margin-right-20 parent-div">

        <!-- Notice the unique id of these inputs -->
        <input type="text" id="newmeal-{{$key}}"  name="newmeal[]" value="{{ $element->food }}">
        <input type="hidden" id="mealtime-{{$key}}"  name="mealtime[]" value="{{ $element->id }}">
        <div class="col-md-12 margin-top-5 dropdown" style="padding-left: 0px; padding-right: 0px;">

             <!-- notice the unique id, and the data attribute -->
             <select id="dropdown-{{$key}}"  data-key="{{$key}}" name="dropdown[]"  class="form-control foodrecipe_item dropdown_item" >
                 <option value="">None</option>
                  @foreach ($meal_list as  $element)
                     <option value="{{ $element->id }}">{{ $element->title }}</option>
                  @endforeach
              </select>

           </div>
        </div>
    @endforeach

 </div>

$(document).ready(function () {
    // this observer will need to be changed.  Left as exercise for the reader.
    $("#dropdown option").filter(function () {
         return $(this).val() == $("#newmeal").val();
    }).attr('selected', true);

    // using a class to observe.  Needs to be something that isn't used elsewhere, though.
    $(".foodrecipe_item").on("change", function () {
         var key = $(this).data('key');
         $("#newmeal-"+key).val($(this).find("option:selected").text())
    });
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何获取下拉值作为文本框名称?

来自分类Dev

从文本框中的下拉列表中获取所选选项

来自分类Dev

选择下拉列表时在文本框中获取值

来自分类Dev

如何在下拉菜单中添加文本框选择选项

来自分类Dev

选择下拉列表后如何使用从mysql表中获取的数据填充多个文本框

来自分类Dev

选择下拉列表后如何使用从mysql表中获取的数据填充多个文本框

来自分类Dev

如何在文本框获得焦点时选择文本框中的特定文本

来自分类Dev

如何获取while循环内的文本框值?

来自分类Dev

如何通过在jQuery中传递选项文本来获取下拉列表的特定选项值

来自分类Dev

如何在下拉列表中添加文本框?

来自分类Dev

如何在文本框中插入值以选择选项

来自分类Dev

如果从JSON获取空值,如何获取文本框而不是下拉选择框

来自分类Dev

如果从JSON获取空值,如何获取文本框而不是下拉选择框

来自分类Dev

如何在面板中的文本框中使用foreach

来自分类Dev

如何在JavaScript中循环浏览文本框

来自分类Dev

如何在JavaScript中取消选择文本框

来自分类Dev

如何在JavaScript中取消选择文本框

来自分类Dev

在下拉列表中选择多个选项时,如何生成动态文本框?

来自分类Dev

如何在文本框的TextChanged事件中获取文本的旧文本和更改后的文本?

来自分类Dev

当特定的选项是从下拉列表中动态表单角选择显示隐藏的文本框

来自分类Dev

如何在React中获取文本框的值?

来自分类Dev

如何在GridView中获取编辑文本框的ID

来自分类Dev

如何在表格中获取文本框值

来自分类Dev

如何在jQuery中获取文本框的更新值

来自分类Dev

如何在jquery中获取多个文本框ID

来自分类Dev

如何在代码的文本框中获取新行?

来自分类Dev

如何在jQuery中获取下拉列表选项的数量

来自分类Dev

如何在jQuery中获取下拉列表选项的数量

来自分类Dev

如何在Kendo UI中获取下拉菜单的选定项目的文本?

Related 相关文章

  1. 1

    如何获取下拉值作为文本框名称?

  2. 2

    从文本框中的下拉列表中获取所选选项

  3. 3

    选择下拉列表时在文本框中获取值

  4. 4

    如何在下拉菜单中添加文本框选择选项

  5. 5

    选择下拉列表后如何使用从mysql表中获取的数据填充多个文本框

  6. 6

    选择下拉列表后如何使用从mysql表中获取的数据填充多个文本框

  7. 7

    如何在文本框获得焦点时选择文本框中的特定文本

  8. 8

    如何获取while循环内的文本框值?

  9. 9

    如何通过在jQuery中传递选项文本来获取下拉列表的特定选项值

  10. 10

    如何在下拉列表中添加文本框?

  11. 11

    如何在文本框中插入值以选择选项

  12. 12

    如果从JSON获取空值,如何获取文本框而不是下拉选择框

  13. 13

    如果从JSON获取空值,如何获取文本框而不是下拉选择框

  14. 14

    如何在面板中的文本框中使用foreach

  15. 15

    如何在JavaScript中循环浏览文本框

  16. 16

    如何在JavaScript中取消选择文本框

  17. 17

    如何在JavaScript中取消选择文本框

  18. 18

    在下拉列表中选择多个选项时,如何生成动态文本框?

  19. 19

    如何在文本框的TextChanged事件中获取文本的旧文本和更改后的文本?

  20. 20

    当特定的选项是从下拉列表中动态表单角选择显示隐藏的文本框

  21. 21

    如何在React中获取文本框的值?

  22. 22

    如何在GridView中获取编辑文本框的ID

  23. 23

    如何在表格中获取文本框值

  24. 24

    如何在jQuery中获取文本框的更新值

  25. 25

    如何在jquery中获取多个文本框ID

  26. 26

    如何在代码的文本框中获取新行?

  27. 27

    如何在jQuery中获取下拉列表选项的数量

  28. 28

    如何在jQuery中获取下拉列表选项的数量

  29. 29

    如何在Kendo UI中获取下拉菜单的选定项目的文本?

热门标签

归档