我如何在 foreach 中附加 jquery 中选择选项

Posted

技术标签:

【中文标题】我如何在 foreach 中附加 jquery 中选择选项【英文标题】:how do i make the option selected in append jquery in foreach 【发布时间】:2020-05-04 04:39:23 【问题描述】:

如何根据循环中从value[0] 获得的值选择option

$.each(data, function(key, value) 
  $("#cektubuh").append(               
    `<tr>
      <td> 
        <select name="duration_type[]" class="form-control" required>
          // here I want to add the selected option according to $ value [0]
          <option value="Semester">Semester</option>
          <option value="Month">Month</option>
        </select>
      </td>
    </tr>`
  );
);

【问题讨论】:

您创建的所有select 元素是否都设置为value[0] 的值?如果是这样,只需在 each() 循环的 outside 执行 $('#cektubuh select').val(value[0]) @manikantgautam 这绝对没有意义。 @RoryMcCrossan no sir,还有其他选择选项需要选择,val [0] 只是一个例子 好的,那么value[0] 在循环中是如何变化的呢?我假设索引发生了变化? 【参考方案1】:

由于您没有提供data 的示例,因此无法知道此处使用了哪些值或它们如何比较。这是基于您提供的内容的基本示例。

$.each(data, function(k, v) 
  var row = $("<tr>").appendTo($("#cektubuh"));
  var cell = $("<td>").appendTo(row);
  var sel = $("<select>", 
    name: "duration_type[]",
    class: "form-control"
  ).prop("required", true).appendTo(cell);
  $("<option>", 
    value: v[0]
  ).html(v[0]).prop("selected", true).appendTo(sel);
  $("<option>", 
    value: "Semester"
  ).html("Semester").appendTo(sel);
  $("<option>", 
    value: "Month"
  ).html("Month").appendTo(sel);
);

如果比较复杂或有多个元素,请提供结构示例,以便显示更完整的答案。

【讨论】:

【参考方案2】:

如果您有属于选项列表的value,并且您希望显示为selected option 就这样做。

var value = 'some value';
$('name="duration_type[]"').val(value);

它将显示该值已被选中。

【讨论】:

以上是关于我如何在 foreach 中附加 jquery 中选择选项的主要内容,如果未能解决你的问题,请参考以下文章

php foreach循环中的jquery脚本

如何从 foreach 循环中将双精度值附加到 2D 数组,并访问前一个索引?

在 jQuery 中,如何显示以前附加的内容而不再次附加?

如何在php中使用foreach循环将数据从数据库检索到jquery-ui手风琴

如何在jquery中附加到html之前编译字符串(包含角度目录)?

如何使用 jQuery 在 IE 中附加样式表?